xserver: Branch 'server-1.12-branch' - 2 commits

Jeremy Huddleston jeremyhu at kemper.freedesktop.org
Sun Oct 14 17:42:37 PDT 2012


 hw/xfree86/common/xf86.h       |    3 +++
 hw/xfree86/common/xf86Helper.c |    6 ++++++
 hw/xfree86/common/xf86Module.h |    2 +-
 hw/xquartz/xpr/dri.c           |    6 ++++++
 4 files changed, 16 insertions(+), 1 deletion(-)

New commits:
commit 01aac1f533d211c90a50127cc82a56bebb44dd0d
Author: Jeremy Huddleston Sequoia <jeremyhu at apple.com>
Date:   Thu Sep 20 21:49:40 2012 -0700

    XQuartz: Avoid a possible deadlock with DRI on OS X 10.7.5 and OS X 10.8.2
    
    <rdar://problem/12338921>
    http://bugs.winehq.org/show_bug.cgi?id=31751
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu at apple.com>
    (cherry picked from commit 25d26875bc9bd6fd23ae1b5280f015abf1b033b7)

diff --git a/hw/xquartz/xpr/dri.c b/hw/xquartz/xpr/dri.c
index 002ec94..9bac568 100644
--- a/hw/xquartz/xpr/dri.c
+++ b/hw/xquartz/xpr/dri.c
@@ -68,6 +68,7 @@
 #include "mi.h"
 #include "mipointer.h"
 #include "rootless.h"
+#include "rootlessCommon.h"
 #include "x-hash.h"
 #include "x-hook.h"
 #include "driWrap.h"
@@ -384,6 +385,11 @@ DRICreateSurface(ScreenPtr pScreen, Drawable id,
     DRIDrawablePrivPtr pDRIDrawablePriv;
 
     if (pDrawable->type == DRAWABLE_WINDOW) {
+        /* <rdar://problem/12338921>
+         * http://bugs.winehq.org/show_bug.cgi?id=31751
+         */
+        RootlessStopDrawing((WindowPtr)pDrawable, FALSE);
+
         pDRIDrawablePriv = CreateSurfaceForWindow(pScreen,
                                                   (WindowPtr)pDrawable, &wid);
 
commit 9422321b37ddafb5b12f259842e10c7803039857
Author: Peter Hutterer <peter.hutterer at who-t.net>
Date:   Wed Oct 3 13:12:27 2012 +1000

    xfree86: add xf86UpdateDesktopDimensions()
    
    This call is required for external drivers (specifically NVIDIA) that do
    not share the xfree86 infrastructure to update the desktop dimensions.
    Without it, the driver would update the ScreenRecs but not update the total
    dimensions the input code relies on for transformation.
    
    This call is a thin wrapper around the already-existing internal call and
    should be backported to all stable series servers, with the minor ABI bump.
    
    Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>
    CC: Andy Ritger <aritger at nvidia.com>
    Reviewed-by: Aaron Plattner <aplattner at nvidia.com>
    (cherry picked from commit 0a75bd640b3dc26b89d9e342999a7f4b7e98edbf)
    
    Conflicts:
    	hw/xfree86/common/xf86.h
    	hw/xfree86/common/xf86Helper.c
    	hw/xfree86/common/xf86Module.h

diff --git a/hw/xfree86/common/xf86.h b/hw/xfree86/common/xf86.h
index fc4c34e..7b1fc84 100644
--- a/hw/xfree86/common/xf86.h
+++ b/hw/xfree86/common/xf86.h
@@ -451,4 +451,7 @@ VidModeExtensionInit(ScreenPtr pScreen);
 
 #endif                          /* _NO_XF86_PROTOTYPES */
 
+/* Update the internal total dimensions of all ScreenRecs together */
+extern _X_EXPORT void
+xf86UpdateDesktopDimensions(void);
 #endif                          /* _XF86_H */
diff --git a/hw/xfree86/common/xf86Helper.c b/hw/xfree86/common/xf86Helper.c
index 8c948cf..0787171 100644
--- a/hw/xfree86/common/xf86Helper.c
+++ b/hw/xfree86/common/xf86Helper.c
@@ -1834,3 +1834,9 @@ xf86MotionHistoryAllocate(InputInfoPtr pInfo)
 {
     AllocateMotionHistory(pInfo->dev);
 }
+
+void
+xf86UpdateDesktopDimensions(void)
+{
+    update_desktop_dimensions();
+}
diff --git a/hw/xfree86/common/xf86Module.h b/hw/xfree86/common/xf86Module.h
index 0036c59..b5e030f 100644
--- a/hw/xfree86/common/xf86Module.h
+++ b/hw/xfree86/common/xf86Module.h
@@ -82,7 +82,7 @@ typedef enum {
  * mask is 0xFFFF0000.
  */
 #define ABI_ANSIC_VERSION	SET_ABI_VERSION(0, 4)
-#define ABI_VIDEODRV_VERSION	SET_ABI_VERSION(12, 1)
+#define ABI_VIDEODRV_VERSION	SET_ABI_VERSION(12, 2)
 #define ABI_XINPUT_VERSION	SET_ABI_VERSION(16, 0)
 #define ABI_EXTENSION_VERSION	SET_ABI_VERSION(6, 0)
 #define ABI_FONT_VERSION	SET_ABI_VERSION(0, 6)


More information about the xorg-commit mailing list