An uninitialized or otherwise invalid condition variable can apparently cause a hang in pthread_cond_broadcast. Ekiga, openoffice, and xine at least are freezing as a result of event_notify never being initialized.
Signed-off-by: Brian Rogers <br...@xyzw.org> --- src/xcb_disp.c | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) diff --git a/src/xcb_disp.c b/src/xcb_disp.c index d976064..584380c 100644 --- a/src/xcb_disp.c +++ b/src/xcb_disp.c @@ -94,6 +94,9 @@ int _XConnectXCB(Display *dpy, _Xconst char *display, char **fullnamep, int *scr dpy->xcb->next_xid = xcb_generate_id(dpy->xcb->connection); dpy->xcb->event_notify = xcondition_malloc(); + if (!dpy->xcb->event_notify) + return 0; + xcondition_init(dpy->xcb->event_notify); return !xcb_connection_has_error(c); } -- 1.6.0.4 _______________________________________________ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg