Hi Tiago,

We're having some problems in XQuartz due to the privates changes.  Firstly, 
compilation fails.  The included patch causes the server to build, but we die 
inside dixSetPrivate from DRIWrapInit on launch:

Application Specific Information:
Assertion failed: (key->size == 0), function dixSetPrivate, file 
../../../include/privates.h, line 147.

Thread 4 Crashed:
0   libSystem.B.dylib                   0x00007fff8191638d usleep$NOCANCEL + 0
1   libSystem.B.dylib                   0x00007fff8193597c abort + 93
2   libSystem.B.dylib                   0x00007fff819229b4 __pthread_markcancel 
+ 0
3   X11.bin                             0x000000010001c738 dixSetPrivate + 71
4   X11.bin                             0x000000010001c6e5 DRIWrapInit + 179
5   X11.bin                             0x000000010001a2b2 DRIFinishScreenInit 
+ 233
6   X11.bin                             0x000000010001fa50 xprSetupScreen + 68
7   X11.bin                             0x0000000100015f01 QuartzSetupScreen + 
35
8   X11.bin                             0x0000000100011142 DarwinScreenInit + 
595
9   X11.bin                             0x0000000100149091 AddScreen + 884
10  X11.bin                             0x0000000100011cde InitOutput + 204
11  X11.bin                             0x0000000100131f27 dix_main + 571
12  X11.bin                             0x0000000100018ddb server_thread + 64
13  libSystem.B.dylib                   0x00007fff81880456 _pthread_start + 331
14  libSystem.B.dylib                   0x00007fff81880309 thread_start + 13



>From 4ad55ae2b80589a3981f7dd915c84615ce5e820f Mon Sep 17 00:00:00 2001
From: Jeremy Huddleston <[email protected]>
Date: Sun, 6 Jun 2010 16:31:19 -0700
Subject: [PATCH] XQuartz: Fix build regression from 
faeebead7bfcc78535757ca7acc1faf7554c03b7

Signed-off-by: Jeremy Huddleston <[email protected]>
---
 hw/xquartz/xpr/dri.c       |   16 ++++++++--------
 hw/xquartz/xpr/xprCursor.c |    4 ++--
 2 files changed, 10 insertions(+), 10 deletions(-)

diff --git a/hw/xquartz/xpr/dri.c b/hw/xquartz/xpr/dri.c
index 72a7ecf..aa5687b 100644
--- a/hw/xquartz/xpr/dri.c
+++ b/hw/xquartz/xpr/dri.c
@@ -205,14 +205,14 @@ DRIScreenInit(ScreenPtr pScreen)
     DRIScreenPrivPtr    pDRIPriv;
     int                 i;
 
-    if (!dixRegisterPrivateKey(&DRIScreenPrivateKeyRec, PRIVATE_SCREEN, 0))
-       return FALSE:
-    if (!dixRegisterPrivateKey(&DRIWindowPrivateKeyRec, PRIVATE_WINDOW, 0))
-       return FALSE:
-    if (!dixRegisterPrivateKey(&DRIPixmapPrivateKeyRec, PRIVATE_PIXMAP, 0))
-       return FALSE:
-    if (!dixRegisterPrivateKey(&DRIPixmapBufferPrivateKeyRec, PRIVATE_PIXMAP, 
0))
-       return FALSE:
+    if (!dixRegisterPrivateKey(&DRIScreenPrivKeyRec, PRIVATE_SCREEN, 0))
+       return FALSE;
+    if (!dixRegisterPrivateKey(&DRIWindowPrivKeyRec, PRIVATE_WINDOW, 0))
+       return FALSE;
+    if (!dixRegisterPrivateKey(&DRIPixmapPrivKeyRec, PRIVATE_PIXMAP, 0))
+       return FALSE;
+    if (!dixRegisterPrivateKey(&DRIPixmapBufferPrivKeyRec, PRIVATE_PIXMAP, 0))
+       return FALSE;
 
     pDRIPriv = (DRIScreenPrivPtr) calloc(1, sizeof(DRIScreenPrivRec));
     if (!pDRIPriv) {
diff --git a/hw/xquartz/xpr/xprCursor.c b/hw/xquartz/xpr/xprCursor.c
index c268c2c..67fcbe7 100644
--- a/hw/xquartz/xpr/xprCursor.c
+++ b/hw/xquartz/xpr/xprCursor.c
@@ -58,7 +58,7 @@ typedef struct {
 } QuartzCursorScreenRec, *QuartzCursorScreenPtr;
 
 static DevPrivateKeyRec darwinCursorScreenKeyRec;
-#define darwinCursorScreenKey (&darwinCursorScreenKey)
+#define darwinCursorScreenKey (&darwinCursorScreenKeyRec)
 
 #define CURSOR_PRIV(pScreen) ((QuartzCursorScreenPtr) \
     dixLookupPrivate(&pScreen->devPrivates, darwinCursorScreenKey))
@@ -359,7 +359,7 @@ QuartzInitCursor(ScreenPtr pScreen)
     if (!miDCInitialize(pScreen, &quartzScreenFuncsRec))
         return FALSE;
 
-    if (!dixRegisterPrivate(&darwinCursorScreenKeyRec, PRIVATE_SCREEN, 0))
+    if (!dixRegisterPrivateKey(&darwinCursorScreenKeyRec, PRIVATE_SCREEN, 0))
        return FALSE;
 
     ScreenPriv = calloc(1, sizeof(QuartzCursorScreenRec));
-- 
1.7.1


_______________________________________________
[email protected]: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel

Reply via email to