Stefan Dirsch skrev:
On Fri, Dec 15, 2006 at 11:08:43PM +0100, Simon Strandman wrote:
Hello

I wanted to try the latest xgl/compiz stuff so I added a two repos from repos.opensuse.org; X11:/XGL and xorg72. That got me Xorg 7.2 RC3, mesa 6.5.2, compiz 0.3.4 and some other stuff. The new xorg is built with xcb instead of standard xlib which causes a problem with compiz. Now it refuses to start with this error:

[EMAIL PROTECTED]:~> DISPLAY=":1" compiz
compiz: xcb_xlib.c:50: xcb_xlib_unlock: Assertion `c->xlib.lock' failed.
Avbruten (SIGABRT)

Is this a known problem? Any ideas?

Probably related to the rather old Mesa sources in compiz. Anyway, I
no longer build libX11 against libxcb for the xorg72 project. Java
apps is another problem.

See also https://bugs.freedesktop.org/show_bug.cgi?id=9336

Best regards,
Stefan

Public Key available
------------------------------------------------------
Stefan Dirsch (Res. & Dev.)   SUSE LINUX Products GmbH
Tel: 0911-740 53 0            Maxfeldstraße 5
FAX: 0911-740 53 479          D-90409 Nürnberg
http://www.suse.de Germany ------------------------------------------------------
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Hello

Thanks for your reply. I updated my system today and it still wouldn't run. But then I searched the freedesktop bugzilla and found a patch for mesa that fixed a problem like this (bug #*8521*, linked in the bug you posted). I adapted the patch to the mesa snapshot in the compiz SRPM and rebuilded it. Now compiz actually runs again, with xcb! The patch it attatched to this mail.

--- src/glx/x11/glxext.c        2006-04-11 14:21:48.000000000 +0200
+++ src/glx/x11/glxext.c        2006-12-16 10:29:41.000000000 +0100
@@ -1015,11 +1015,11 @@
        if (!_XReply(dpy, (xReply*) &reply, 0, False)) {
            /* Something is busted. Punt. */
            UnlockDisplay(dpy);
+           SyncHandle();
            FreeScreenConfigs(priv);
            return GL_FALSE;
        }
 
-       UnlockDisplay(dpy);
        if (!reply.numVisuals) {
            /* This screen does not support GL rendering */
            UnlockDisplay(dpy);

Reply via email to