Open hughsie opened 2 years ago
Why Optionally? (I have not checked yet the patch though)
@nacho fprintd is doing some quite unusual things to the GMainContext, which seems to break when we're not processing the events in a thread -- i wrote an email about it here: https://sourceforge.net/p/libusb/mailman/libusb-devel/thread/CAD2FfiHXhwiC9Sd-jEJ2KM6z4FNp%3D3oF8-saO52bp15fDU2hyQ%40mail.gmail.com/#msg37720874 -- it looks like @benzea replied already!
Having two threads interact is causing difficult to debug deadlocks. Just use libusb_set_pollfd_notifiers() and use the locking in libusb_handle_events().
By default use a thread to avoid breaking other projects like fprintd that expect to be able to manually process the default GMainContext.