[Spice-devel] [spice-gtk Win32 v5 05/22] spice_usb_device_manager_add_dev: check auto_ok before freeing libusb device list
Marc-André Lureau
marcandre.lureau at gmail.com
Mon Jul 9 05:54:39 PDT 2012
It would have been more sensible to move libusb_free_device_list() to
the end of the function, perhaps (goto cleanup or something).
ack anyway
On Mon, Jul 9, 2012 at 2:14 PM, Uri Lublin <uril at redhat.com> wrote:
> In preparation for a different SpiceUsbDevice.
> ---
> gtk/usb-device-manager.c | 15 +++++++++------
> 1 files changed, 9 insertions(+), 6 deletions(-)
>
> diff --git a/gtk/usb-device-manager.c b/gtk/usb-device-manager.c
> index c50a7da..a81db57 100644
> --- a/gtk/usb-device-manager.c
> +++ b/gtk/usb-device-manager.c
> @@ -543,6 +543,7 @@ static void spice_usb_device_manager_add_dev(SpiceUsbDeviceManager *self,
> libusb_device *device = NULL, **dev_list = NULL;
> const gchar *devtype, *devclass;
> int i, bus, address;
> + gboolean auto_ok = FALSE;
>
> devtype = g_udev_device_get_property(udev, "DEVTYPE");
> /* Check if this is a usb device (and not an interface) */
> @@ -572,6 +573,13 @@ static void spice_usb_device_manager_add_dev(SpiceUsbDeviceManager *self,
> }
> }
>
> + if (device && priv->auto_connect) {
> + auto_ok = usbredirhost_check_device_filter(
> + priv->auto_conn_filter_rules,
> + priv->auto_conn_filter_rules_count,
> + device, 0) == 0;
> + }
> +
> if (!priv->coldplug_list)
> libusb_free_device_list(dev_list, 1);
>
> @@ -584,16 +592,11 @@ static void spice_usb_device_manager_add_dev(SpiceUsbDeviceManager *self,
> g_ptr_array_add(priv->devices, device);
>
> if (priv->auto_connect) {
> - gboolean can_redirect, auto_ok;
> + gboolean can_redirect;
>
> can_redirect = spice_usb_device_manager_can_redirect_device(
> self, (SpiceUsbDevice *)device, NULL);
>
> - auto_ok = usbredirhost_check_device_filter(
> - priv->auto_conn_filter_rules,
> - priv->auto_conn_filter_rules_count,
> - device, 0) == 0;
> -
> if (can_redirect && auto_ok)
> spice_usb_device_manager_connect_device_async(self,
> (SpiceUsbDevice *)device, NULL,
> --
> 1.7.1
>
> _______________________________________________
> Spice-devel mailing list
> Spice-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/spice-devel
--
Marc-André Lureau
More information about the Spice-devel
mailing list