[Spice-devel] [PATCH spice-gtk] widget: fix request_auto_usbredir() critical

marcandre.lureau at redhat.com marcandre.lureau at redhat.com
Wed Jun 6 15:23:24 UTC 2018


From: Marc-André Lureau <marcandre.lureau at redhat.com>

On f28, when focusing out of the display, we get the following
critical:

(spicy:15388): GSpice-CRITICAL **: 17:20:07.710:
spice_gtk_session_request_auto_usbredir: assertion
's->auto_usbredir_reqs > 0' failed

This is due to unbalanced gtk+ focus-in and focus-out events (one more
focus-out). This may be fixable on the gtk+ side, but it's also easy
to prevent on our side when the last focus state is unchanged.

Signed-off-by: Marc-André Lureau <marcandre.lureau at redhat.com>
---
 src/spice-widget.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/spice-widget.c b/src/spice-widget.c
index 72f5334..2adcf30 100644
--- a/src/spice-widget.c
+++ b/src/spice-widget.c
@@ -207,6 +207,9 @@ static void update_keyboard_focus(SpiceDisplay *display, gboolean state)
 {
     SpiceDisplayPrivate *d = display->priv;
 
+    if (d->keyboard_have_focus == state)
+        return;
+
     d->keyboard_have_focus = state;
     spice_gtk_session_set_keyboard_has_focus(d->gtk_session, state);
 

base-commit: 7b67ed4eb6ab530bf58afac8ff4ed190cc951dfb
-- 
2.18.0.rc1.1.gae296d1cf5



More information about the Spice-devel mailing list