[Spice-devel] [spice-gtk v2] spice-option: warn on command line failures of usbredir

Victor Toso victortoso at redhat.com
Thu Jul 25 10:52:22 UTC 2019


Hi,

On Thu, Jul 25, 2019 at 12:42:51PM +0200, Victor Toso wrote:
> From: Victor Toso <me at victortoso.com>
> 
> As spice_usb_device_manager_get() can fail for different reasons, we
> should silently ignore it and its error.

And I forgot to fix the typo again, but I did locally :)

> 
> Signed-off-by: Victor Toso <victortoso at redhat.com>
> ---
>  src/spice-option.c | 24 ++++++++++++++++++++----
>  1 file changed, 20 insertions(+), 4 deletions(-)
> 
> diff --git a/src/spice-option.c b/src/spice-option.c
> index c2b059e..08d449e 100644
> --- a/src/spice-option.c
> +++ b/src/spice-option.c
> @@ -212,6 +212,18 @@ GOptionGroup* spice_get_option_group(void)
>      return grp;
>  }
>  
> +SpiceUsbDeviceManager *
> +get_usb_device_manager_for_option(SpiceSession *session, const char *option)
> +{
> +    GError *err = NULL;
> +    SpiceUsbDeviceManager *m = spice_usb_device_manager_get(session, &err);
> +    if (!m) {
> +        g_warning("Option %s is set but failed: %s", option, err->message);
> +        g_error_free(err);
> +    }
> +    return m;
> +}
> +
>  /**
>   * spice_set_session_option:
>   * @session: a #SpiceSession to set option upon
> @@ -261,16 +273,20 @@ void spice_set_session_option(SpiceSession *session)
>              g_object_set(session, "smartcard-db", smartcard_db, NULL);
>      }
>      if (usbredir_auto_redirect_filter) {
> -        SpiceUsbDeviceManager *m = spice_usb_device_manager_get(session, NULL);
> -        if (m)
> +        SpiceUsbDeviceManager *m =
> +                get_usb_device_manager_for_option(session, "--spice-usbredir-auto-redirect-filter");
> +        if (m) {
>              g_object_set(m, "auto-connect-filter",
>                           usbredir_auto_redirect_filter, NULL);
> +        }
>      }
>      if (usbredir_redirect_on_connect) {
> -        SpiceUsbDeviceManager *m = spice_usb_device_manager_get(session, NULL);
> -        if (m)
> +        SpiceUsbDeviceManager *m =
> +                get_usb_device_manager_for_option(session, "--spice-usbredir-redirect-on-connect");
> +        if (m) {
>              g_object_set(m, "redirect-on-connect",
>                           usbredir_redirect_on_connect, NULL);
> +        }
>      }
>      if (disable_usbredir)
>          g_object_set(session, "enable-usbredir", FALSE, NULL);
> -- 
> 2.21.0
> 
> _______________________________________________
> Spice-devel mailing list
> Spice-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/spice-devel
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/spice-devel/attachments/20190725/b3d9712e/attachment.sig>


More information about the Spice-devel mailing list