[Xcb] Problem selecting event input from different threads.

Jamey Sharp jamey at minilop.net
Sun Apr 18 15:32:01 PDT 2010

On Sun, Apr 18, 2010 at 1:31 PM, Erik De Rijcke <derijcke.erik at gmail.com> wrote:
> I have a fairly large program with a small part accessing xcb. It basically
> does the following:
> thread A: open a display; spawn thread b; listen for events.
> thread B: set event mask (substructure redirect mask on root window)
> What seems to happen is that thread A never gets any configure request
> events nor map requests. However when I replicate this exact code with Xlib
> with build in xcb backend, thread A does receive events.
> I'm guessing only the thread that sets the mask gets the events, is there a
> way to tell xcb to deliver the events to thread A or is this a possible bug?

I'm guessing this is a bug I finally tracked down yesterday. :-)

Can you re-test with current libxcb from git master?

I'm a little surprised you had success with current Xlib/XCB though. I
have some fairly hefty patches I'm testing right now (`ico -threads
16` is running on another desktop) to squash several Xlib threading
bugs. Have you noticed the Xlib version of your code dying sometimes
with assertion failures, or hanging?


More information about the Xcb mailing list