unifying: Ensure HID devices are closed if the subclassed open() or probe() failed

Fixes the critical warnings in https://github.com/hughsie/fwupd/issues/117
This commit is contained in:
Richard Hughes 2017-05-23 12:27:23 +01:00
parent 26a52be318
commit fd45583728

View File

@ -746,7 +746,7 @@ lu_device_open (LuDevice *device, GError **error)
/* subclassed */
if (klass->open != NULL) {
if (!klass->open (device, error)) {
g_usb_device_close (priv->usb_device, NULL);
lu_device_close (device, NULL);
return FALSE;
}
}
@ -754,7 +754,7 @@ lu_device_open (LuDevice *device, GError **error)
/* subclassed */
if (!lu_device_probe (device, error)) {
g_usb_device_close (priv->usb_device, NULL);
lu_device_close (device, NULL);
return FALSE;
}