[Xcb] [Bug 92652] _XReadEvents is treating EAGAIN as a fatal error instead of just trying again
bugzilla-daemon at freedesktop.org
bugzilla-daemon at freedesktop.org
Sat May 28 22:12:48 UTC 2016
https://bugs.freedesktop.org/show_bug.cgi?id=92652
Jeremy Huddleston Sequoia <jeremyhu at freedesktop.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Product|xorg |XCB
Component|Lib/Xlib |Library
QA Contact|xorg-team at lists.x.org |xcb at lists.freedesktop.org
--- Comment #5 from Jeremy Huddleston Sequoia <jeremyhu at freedesktop.org> ---
xcb_generic_event_t *event;
dpy->xcb->event_waiter = 1;
UnlockDisplay(dpy);
event = xcb_wait_for_event(dpy->xcb->connection);
/* It appears that classic Xlib respected user
* locks when waking up after waiting for
* events. However, if this thread did not have
* any user locks, and another thread takes a
* user lock and tries to read events, then we'd
* deadlock. So we'll choose to let the thread
* that got in first consume events, despite the
* later thread's user locks. */
InternalLockDisplay(dpy, /* ignore user locks */ 1);
dpy->xcb->event_waiter = 0;
ConditionBroadcast(dpy, dpy->xcb->event_notify);
if(!event)
_XIOError(dpy); // Here's where we're bailing.
So xcb_wait_for_event() is returning NULL.
--
You are receiving this mail because:
You are the QA Contact for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/xcb/attachments/20160528/07a9d12f/attachment.html>
More information about the Xcb
mailing list