XCB is a single-threaded protocol, and when called from a multi-threaded
client application, that client needs to take care that its calls are
properly thread-safe.  Otherwise, it can trip assertions in the XCB
code.

Which would mean this is not really a *bug* in xcb (any more than a
syntax error would be a bug in gcc), but that xcb is catching a bug in
the client application.  Indeed, the assertion error text from xcb spell
out the threading issue (or other similar issues commonly hit in code
calling xcb_io.c functionality.)

However, lots of code is MT and xcb is just too fragile, and the error
text makes it look like the crash was in X so these issues tend to get
filed against X components rather than investigated as client bugs.  But
I don't have a good idea what should be done on the X side.  We're aware
of some upstream work investigating these locking problems:
http://article.gmane.org/gmane.comp.freedesktop.xorg.devel/29102

** Changed in: libx11 (Ubuntu)
   Importance: Medium => High

** Changed in: libx11 (Ubuntu)
       Status: Confirmed => Triaged

-- 
You received this bug notification because you are a member of Ubuntu-X,
which is subscribed to libx11 in Ubuntu.
https://bugs.launchpad.net/bugs/905686

Title:
  nautilus assert failure: nautilus: ../../src/xcb_io.c:528: _XAllocID:
  Assertion `ret != inval_id' failed.

To manage notifications about this bug go to:
https://bugs.launchpad.net/xlibs/+bug/905686/+subscriptions

_______________________________________________
Mailing list: https://launchpad.net/~ubuntu-x-swat
Post to     : ubuntu-x-swat@lists.launchpad.net
Unsubscribe : https://launchpad.net/~ubuntu-x-swat
More help   : https://help.launchpad.net/ListHelp

Reply via email to