]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
vbox: Report an error when VBox CAPI initialization fails
authorMichal Privoznik <mprivozn@redhat.com>
Sat, 5 Oct 2024 21:50:25 +0000 (23:50 +0200)
committerMichal Privoznik <mprivozn@redhat.com>
Fri, 31 Jan 2025 09:54:03 +0000 (10:54 +0100)
If initialization of VBOX fails inside of _pfnInitialize an
negative value is returned to signal an error condition to a
caller but no error message is printed out. Reporting an error
may shed more light into why VBOX failed to initialize.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Martin Kletzander <mkletzan@redhat.com>
src/vbox/vbox_tmpl.c

index 908625e70252301335f02da5a94a02c7788cb75f..0059a9ee3dda9d6933d332c6408a8af21dfff8d7 100644 (file)
@@ -429,13 +429,18 @@ static int _pfnInitialize(struct _vboxDriver *driver)
 {
     nsresult rc;
 
-    if (!(driver->pFuncs = g_pfnGetFunctions(VBOX_XPCOMC_VERSION)))
+    if (!(driver->pFuncs = g_pfnGetFunctions(VBOX_XPCOMC_VERSION))) {
+        virReportError(VIR_ERR_OPERATION_FAILED, "%s",
+                       _("Unable to get pointer to VirtualBox vtable"));
         return -1;
+    }
 
     rc = driver->pFuncs->pfnClientInitialize(IVIRTUALBOXCLIENT_IID_STR,
                                              &driver->vboxClient);
 
     if (NS_FAILED(rc)) {
+        virReportError(VIR_ERR_OPERATION_FAILED, "%s",
+                       _("Unable to initialize VirtualBox C API client"));
         return -1;
     } else {
         driver->vboxClient->vtbl->GetVirtualBox(driver->vboxClient, &driver->vboxObj);