The first patch is only about reverting a patch that, even if it fixed the problem, it wasn't done in the proper way. The second patch introduces and uses new helpers for GTask, providing them functions that will explicitely return in idle instead of leaving the decision to the GTask heurestic (which doesn't work with Coroutine). Fabiano Fidêncio (2): Revert "channel-usbredir: Fix crash due to a Task returning earlier than expected" Introduce gtask-helper.[ch] m4/manywarnings.m4 | 1 - src/Makefile.am | 2 + src/channel-base.c | 4 +- src/channel-main.c | 12 ++-- src/channel-usbredir.c | 12 ++-- src/gtask-helper.c | 152 +++++++++++++++++++++++++++++++++++++++++++ src/gtask-helper.h | 43 ++++++++++++ src/spice-channel.c | 4 +- src/spice-gstaudio.c | 6 +- src/usb-acl-helper.c | 12 ++-- src/usb-device-manager.c | 18 ++--- src/vmcstream.c | 35 ++-------- src/win-usb-driver-install.c | 21 +++--- 13 files changed, 254 insertions(+), 68 deletions(-) create mode 100644 src/gtask-helper.c create mode 100644 src/gtask-helper.h -- 2.5.5 _______________________________________________ Spice-devel mailing list Spice-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/spice-devel