[Spice-devel] [spice-gtk v2 1/3] usb-device-manager: handle failures from g_udev_client_new()

Victor Toso victortoso at redhat.com
Tue Nov 15 13:33:14 UTC 2016


From: Victor Toso <me at victortoso.com>

As we must handle when GUdevClient creation can fails otherwise code
might crash.

Signed-off-by: Victor Toso <victortoso at redhat.com>
Acked-by: Christophe Fergeau <cfergeau at redhat.com>
---
 src/usb-device-manager.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/src/usb-device-manager.c b/src/usb-device-manager.c
index 3d4bd98..671a5be 100644
--- a/src/usb-device-manager.c
+++ b/src/usb-device-manager.c
@@ -321,6 +321,11 @@ static gboolean spice_usb_device_manager_initable_init(GInitable  *initable,
     /* Start listening for usb devices plug / unplug */
 #ifdef USE_GUDEV
     priv->udev = g_udev_client_new(subsystems, err);
+    if (priv->udev == NULL) {
+        const gchar *msg = (err != NULL && *err != NULL) ? (*err)->message : "";
+        g_warning("Error initializing GUdevClient due %s", msg);
+        return FALSE;
+    }
     g_signal_connect(G_OBJECT(priv->udev), "uevent",
                      G_CALLBACK(spice_usb_device_manager_uevent_cb), self);
     /* Do coldplug (detection of already connected devices) */
-- 
2.9.3



More information about the Spice-devel mailing list