Commit 1ab015b3 authored by Victor Toso's avatar Victor Toso Committed by Frediano Ziglio

spice-option: warn on command line failures of usbredir

As spice_usb_device_manager_get() can fail for different reasons, we
should ignore and continue but at least give a warning.
Signed-off-by: 's avatarVictor Toso <victortoso@redhat.com>
Acked-by: Frediano Ziglio's avatarFrediano Ziglio <fziglio@redhat.com>
parent c8a166a5
Pipeline #51202 passed with stage
in 3 minutes and 13 seconds
......@@ -212,6 +212,18 @@ GOptionGroup* spice_get_option_group(void)
return grp;
}
static 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);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment