[cc:ing the xcb list] On Sun, Apr 11, 2010 at 14:27:38 -0700, Jim Ham wrote:
> I have an application that uses direct calls to X. This application > worked with a previous incarnation of X (before X.org) but crashes > with the following message on newer versions of X. I've tried 7.4+20 and > 7.5+5, both Debian on a x86 machine. > > xcb_io.c:249: process_responses: Assertion `(((long) > (dpy->last_request_read) - (long) (dpy->request)) <= 0)' failed > > Without going into a lot of detail, here's what happens: > > The main thread blocks with a the call XNextEvent(...). A secondary > thread sends a user event to X with XSentEvent(...). The application > immediately crashes on the this first call to XSendEvent with the above > error message. A normal event such as a mouse click generated by the > Xserver does not cause a crash. > > XInitThreads() is called before any other X calls. All calls to X are > bracketed with XLockDisplay() and XUnlockDisplay() except for the > XNextEvent call in the main thread. As I mentioned, the app has worked > for several years. > > If this is a new problem I can certainly provide more detail. The entire > project may be available via SVN if necessary. There is some custom > hardware, but a couple of patches could fix that. > Do you have a backtrace from the assertion, or an X protocol trace of what happens before the crash? Cheers, Julien _______________________________________________ xorg@lists.freedesktop.org: X.Org support Archives: http://lists.freedesktop.org/archives/xorg Info: http://lists.freedesktop.org/mailman/listinfo/xorg