xserver: Branch 'master' - 2 commits

Jeremy Huddleston jeremyhu at kemper.freedesktop.org
Tue Aug 25 20:17:01 PDT 2009


 configure.ac                |    2 +-
 dix/window.c                |    2 +-
 hw/xquartz/X11Application.m |    3 +--
 hw/xquartz/X11Controller.m  |    3 +--
 hw/xquartz/applewm.c        |    2 +-
 hw/xquartz/darwinEvents.c   |    3 +--
 hw/xquartz/quartz.c         |    2 +-
 hw/xquartz/xpr/xpr.h        |    3 +--
 hw/xquartz/xpr/xprAppleWM.c |    3 +--
 9 files changed, 9 insertions(+), 14 deletions(-)

New commits:
commit 07c935b72fb14cb12f1cb5afbf8cc81f97086bac
Author: Jeremy Huddleston <jeremyhu at freedesktop.org>
Date:   Tue Aug 25 20:11:38 2009 -0700

    XQuartz: Use applewmproto 1.4 updated headers.
    (cherry picked from commit 203df06c0eb2dcd5adfa788a1ba9569650c15f9c)

diff --git a/configure.ac b/configure.ac
index 400c36c..1ee81f9 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1685,7 +1685,7 @@ if test "x$XQUARTZ" = xyes; then
 
 	CFLAGS="${CFLAGS} -DROOTLESS_WORKAROUND -DROOTLESS_SAFEALPHA -DNO_ALLOCA"
 
-	PKG_CHECK_MODULES(XPBPROXY, [applewmproto >= 1.3] [applewm >= 1.3] xfixes fixesproto x11)
+	PKG_CHECK_MODULES(XPBPROXY, [applewmproto >= 1.4] [applewm >= 1.4] xfixes fixesproto x11)
 
         if test "x$XQUARTZ_SPARKLE" = xyes ; then
                 AC_DEFINE(XQUARTZ_SPARKLE,1,[Support application updating through sparkle.])
diff --git a/hw/xquartz/X11Application.m b/hw/xquartz/X11Application.m
index 6ade527..9fb1926 100644
--- a/hw/xquartz/X11Application.m
+++ b/hw/xquartz/X11Application.m
@@ -41,8 +41,7 @@
 #include "darwinEvents.h"
 #include "quartzKeyboard.h"
 #include "quartz.h"
-#define _APPLEWM_SERVER_
-#include "X11/extensions/applewm.h"
+#include <X11/extensions/applewmconst.h>
 #include "micmap.h"
 #include "exglobals.h"
 
diff --git a/hw/xquartz/X11Controller.m b/hw/xquartz/X11Controller.m
index 9900537..46ed022 100644
--- a/hw/xquartz/X11Controller.m
+++ b/hw/xquartz/X11Controller.m
@@ -43,8 +43,7 @@
 #include "darwin.h"
 #include "darwinEvents.h"
 #include "quartz.h"
-#define _APPLEWM_SERVER_
-#include "X11/extensions/applewm.h"
+#include <X11/extensions/applewmconst.h>
 #include "applewmExt.h"
 
 #include <stdio.h>
diff --git a/hw/xquartz/applewm.c b/hw/xquartz/applewm.c
index ad38583..330bac4 100644
--- a/hw/xquartz/applewm.c
+++ b/hw/xquartz/applewm.c
@@ -47,7 +47,7 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #include <X11/Xatom.h>
 #include "darwin.h"
 #define _APPLEWM_SERVER_
-#include "X11/extensions/applewmstr.h"
+#include <X11/extensions/applewmproto.h>
 #include "applewmExt.h"
 #include "X11Application.h"
 
diff --git a/hw/xquartz/darwinEvents.c b/hw/xquartz/darwinEvents.c
index 42e12dc..4822af4 100644
--- a/hw/xquartz/darwinEvents.c
+++ b/hw/xquartz/darwinEvents.c
@@ -67,9 +67,8 @@ in this Software without prior written authorization from The Open Group.
 #define SCROLLWHEELLEFTFAKE  6
 #define SCROLLWHEELRIGHTFAKE 7
 
-#define _APPLEWM_SERVER_
+#include <X11/extensions/applewmconst.h>
 #include "applewmExt.h"
-#include <X11/extensions/applewm.h>
 
 /* FIXME: Abstract this better */
 void QuartzModeEQInit(void);
diff --git a/hw/xquartz/quartz.c b/hw/xquartz/quartz.c
index 3f8f8b9..ca8b245 100644
--- a/hw/xquartz/quartz.c
+++ b/hw/xquartz/quartz.c
@@ -45,7 +45,7 @@
 
 #include "X11Application.h"
 
-#include <X11/extensions/applewm.h>
+#include <X11/extensions/applewmconst.h>
 #include <X11/extensions/randr.h>
 
 // X headers
diff --git a/hw/xquartz/xpr/xpr.h b/hw/xquartz/xpr/xpr.h
index b329ca1..c657e15 100644
--- a/hw/xquartz/xpr/xpr.h
+++ b/hw/xquartz/xpr/xpr.h
@@ -53,8 +53,7 @@ void QuartzResumeXCursor(ScreenPtr pScreen, int x, int y);
  * See CGWindowLevel.h
  */
 
-#define _APPLEWM_SERVER_
-#include <X11/extensions/applewm.h>
+#include <X11/extensions/applewmconst.h>
 static const int normal_window_levels[AppleWMNumWindowLevels+1] = {
 0, 3, 4, 5, INT_MIN + 30, INT_MIN + 29,
 };
diff --git a/hw/xquartz/xpr/xprAppleWM.c b/hw/xquartz/xpr/xprAppleWM.c
index 0a25719..4b31e3a 100644
--- a/hw/xquartz/xpr/xprAppleWM.c
+++ b/hw/xquartz/xpr/xprAppleWM.c
@@ -33,8 +33,7 @@
 
 #include "xpr.h"
 
-#define _APPLEWM_SERVER_
-#include <X11/extensions/applewmstr.h>
+#include <X11/extensions/applewmproto.h>
 
 #include "applewmExt.h"
 #include "rootless.h"
commit 0f613007cd43545eda40825bd74ada3e6e5f36f6
Author: Jeremy Huddleston <jeremyhu at freedesktop.org>
Date:   Wed Aug 5 17:43:29 2009 -0700

    CheckWindowOptionalNeed: Ensure w->optional is set to avoid SEGFAULT
    
    If CheckWindowOptionalNeed is called consecutively (and the first removes optional), then
    we will SEGFAULT.  This can happen in XQuartz because ReparentWindow will call
    pScreen->ReparentWindow which can DeleteProperty which will CheckWindowOptionalNeed... then
    ReparentWindow will call it again later indiscriminantly.
    (cherry picked from commit b608c864ccc59628bd33c033393121b61580460e)

diff --git a/dix/window.c b/dix/window.c
index 1a645f6..9663578 100644
--- a/dix/window.c
+++ b/dix/window.c
@@ -3386,7 +3386,7 @@ CheckWindowOptionalNeed (WindowPtr w)
     WindowOptPtr optional;
     WindowOptPtr parentOptional;
 
-    if (!w->parent)
+    if (!w->parent || !w->optional)
 	return;
     optional = w->optional;
     if (optional->dontPropagateMask != DontPropagateMasks[w->dontPropagate])


More information about the xorg-commit mailing list