From 3c7d5a1f6c188eed12275ff6884a6d8fd1669ffd Mon Sep 17 00:00:00 2001 From: Matthieu Herrb Date: Sun, 24 Feb 2013 15:45:52 +0100 Subject: Merge server-1.13.3rc1 branch from X.Org. up to e604b19fc54fee839bbe2d66930b36108ff03950 --- xserver/hw/xquartz/GL/Makefile.in | 2 +- xserver/hw/xquartz/GL/capabilities.c | 4 ++++ xserver/hw/xquartz/Makefile.in | 2 +- xserver/hw/xquartz/bundle/Makefile.in | 2 +- xserver/hw/xquartz/darwin.c | 16 +++++++++------- xserver/hw/xquartz/mach-startup/Makefile.in | 2 +- xserver/hw/xquartz/man/Makefile.in | 2 +- xserver/hw/xquartz/pbproxy/Makefile.in | 2 +- xserver/hw/xquartz/xpr/Makefile.in | 2 +- xserver/hw/xquartz/xpr/dri.c | 6 ++++++ xserver/hw/xquartz/xpr/xprFrame.c | 28 ++++++++++++++++++++++++++++ xserver/hw/xquartz/xpr/xprScreen.c | 5 +++++ 12 files changed, 59 insertions(+), 14 deletions(-) (limited to 'xserver/hw/xquartz') diff --git a/xserver/hw/xquartz/GL/Makefile.in b/xserver/hw/xquartz/GL/Makefile.in index 0ab7ec630..08b6a590c 100644 --- a/xserver/hw/xquartz/GL/Makefile.in +++ b/xserver/hw/xquartz/GL/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.12.5 from Makefile.am. +# Makefile.in generated by automake 1.12.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2012 Free Software Foundation, Inc. diff --git a/xserver/hw/xquartz/GL/capabilities.c b/xserver/hw/xquartz/GL/capabilities.c index 4702595f4..5573629fd 100644 --- a/xserver/hw/xquartz/GL/capabilities.c +++ b/xserver/hw/xquartz/GL/capabilities.c @@ -20,6 +20,10 @@ * DEALINGS IN THE SOFTWARE. */ +#ifdef HAVE_DIX_CONFIG_H +#include +#endif + #include #include #include diff --git a/xserver/hw/xquartz/Makefile.in b/xserver/hw/xquartz/Makefile.in index 2097f5038..7476c6420 100644 --- a/xserver/hw/xquartz/Makefile.in +++ b/xserver/hw/xquartz/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.12.5 from Makefile.am. +# Makefile.in generated by automake 1.12.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2012 Free Software Foundation, Inc. diff --git a/xserver/hw/xquartz/bundle/Makefile.in b/xserver/hw/xquartz/bundle/Makefile.in index fe108fbcb..4fb91a897 100644 --- a/xserver/hw/xquartz/bundle/Makefile.in +++ b/xserver/hw/xquartz/bundle/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.12.5 from Makefile.am. +# Makefile.in generated by automake 1.12.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2012 Free Software Foundation, Inc. diff --git a/xserver/hw/xquartz/darwin.c b/xserver/hw/xquartz/darwin.c index d26f18a12..b3a1fb37a 100644 --- a/xserver/hw/xquartz/darwin.c +++ b/xserver/hw/xquartz/darwin.c @@ -231,13 +231,15 @@ DarwinScreenInit(ScreenPtr pScreen, int argc, char **argv) } // TODO: Make PseudoColor visuals not suck in TrueColor mode - // if(dfb->depth > 8) - // miSetVisualTypesAndMasks(8, PseudoColorMask, 8, PseudoColor, 0, 0, 0); - if (dfb->depth > 15) - miSetVisualTypesAndMasks(15, TrueColorMask, 5, TrueColor, - RM_ARGB(0, 5, 5, 5), GM_ARGB(0, 5, 5, - 5), - BM_ARGB(0, 5, 5, 5)); + // if(dfb->depth > 8) + // miSetVisualTypesAndMasks(8, PseudoColorMask, 8, PseudoColor, 0, 0, 0); + // + // TODO: Re-add support for 15bit + // if (dfb->depth > 15) + // miSetVisualTypesAndMasks(15, TrueColorMask, 5, TrueColor, + // RM_ARGB(0, 5, 5, 5), GM_ARGB(0, 5, 5, + // 5), + // BM_ARGB(0, 5, 5, 5)); if (dfb->depth > 24) miSetVisualTypesAndMasks(24, TrueColorMask, 8, TrueColor, RM_ARGB(0, 8, 8, 8), GM_ARGB(0, 8, 8, diff --git a/xserver/hw/xquartz/mach-startup/Makefile.in b/xserver/hw/xquartz/mach-startup/Makefile.in index 9d2897bd4..bc87e8768 100644 --- a/xserver/hw/xquartz/mach-startup/Makefile.in +++ b/xserver/hw/xquartz/mach-startup/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.12.5 from Makefile.am. +# Makefile.in generated by automake 1.12.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2012 Free Software Foundation, Inc. diff --git a/xserver/hw/xquartz/man/Makefile.in b/xserver/hw/xquartz/man/Makefile.in index e373879a9..caef8929a 100644 --- a/xserver/hw/xquartz/man/Makefile.in +++ b/xserver/hw/xquartz/man/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.12.5 from Makefile.am. +# Makefile.in generated by automake 1.12.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2012 Free Software Foundation, Inc. diff --git a/xserver/hw/xquartz/pbproxy/Makefile.in b/xserver/hw/xquartz/pbproxy/Makefile.in index b44311343..470ec38ea 100644 --- a/xserver/hw/xquartz/pbproxy/Makefile.in +++ b/xserver/hw/xquartz/pbproxy/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.12.5 from Makefile.am. +# Makefile.in generated by automake 1.12.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2012 Free Software Foundation, Inc. diff --git a/xserver/hw/xquartz/xpr/Makefile.in b/xserver/hw/xquartz/xpr/Makefile.in index 7dfbc5a4e..8833f197f 100644 --- a/xserver/hw/xquartz/xpr/Makefile.in +++ b/xserver/hw/xquartz/xpr/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.12.5 from Makefile.am. +# Makefile.in generated by automake 1.12.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2012 Free Software Foundation, Inc. diff --git a/xserver/hw/xquartz/xpr/dri.c b/xserver/hw/xquartz/xpr/dri.c index 03af163f7..adba69cca 100644 --- a/xserver/hw/xquartz/xpr/dri.c +++ b/xserver/hw/xquartz/xpr/dri.c @@ -64,6 +64,7 @@ #include "mi.h" #include "mipointer.h" #include "rootless.h" +#include "rootlessCommon.h" #include "x-hash.h" #include "x-hook.h" #include "driWrap.h" @@ -380,6 +381,11 @@ DRICreateSurface(ScreenPtr pScreen, Drawable id, DRIDrawablePrivPtr pDRIDrawablePriv; if (pDrawable->type == DRAWABLE_WINDOW) { + /* + * http://bugs.winehq.org/show_bug.cgi?id=31751 + */ + RootlessStopDrawing((WindowPtr)pDrawable, FALSE); + pDRIDrawablePriv = CreateSurfaceForWindow(pScreen, (WindowPtr)pDrawable, &wid); diff --git a/xserver/hw/xquartz/xpr/xprFrame.c b/xserver/hw/xquartz/xpr/xprFrame.c index 01f1def20..aad375b52 100644 --- a/xserver/hw/xquartz/xpr/xprFrame.c +++ b/xserver/hw/xquartz/xpr/xprFrame.c @@ -49,6 +49,10 @@ #include #endif +#ifdef DEBUG_XP_LOCK_WINDOW +#include +#endif + #define DEFINE_ATOM_HELPER(func, atom_name) \ static Atom func(void) { \ static int generation; \ @@ -376,6 +380,18 @@ xprStartDrawing(RootlessFrameID wid, char **pixelData, int *bytesPerRow) unsigned int rowbytes[2]; xp_error err; +#ifdef DEBUG_XP_LOCK_WINDOW + void* callstack[128]; + int i, frames = backtrace(callstack, 128); + char** strs = backtrace_symbols(callstack, frames); + + ErrorF("=== LOCK %d ===\n", (int)x_cvt_vptr_to_uint(wid)); + for (i = 0; i < frames; ++i) { + ErrorF(" %s\n", strs[i]); + } + free(strs); +#endif + err = xp_lock_window(x_cvt_vptr_to_uint( wid), NULL, NULL, data, rowbytes, NULL); if (err != Success) @@ -395,6 +411,18 @@ xprStopDrawing(RootlessFrameID wid, Bool flush) { xp_error err; +#ifdef DEBUG_XP_LOCK_WINDOW + void* callstack[128]; + int i, frames = backtrace(callstack, 128); + char** strs = backtrace_symbols(callstack, frames); + + ErrorF("=== UNLOCK %d ===\n", (int)x_cvt_vptr_to_uint(wid)); + for (i = 0; i < frames; ++i) { + ErrorF(" %s\n", strs[i]); + } + free(strs); +#endif + err = xp_unlock_window(x_cvt_vptr_to_uint(wid), flush); /* This should be a FatalError, but we started tripping over it. Make it a * FatalError after http://xquartz.macosforge.org/trac/ticket/482 is fixed. diff --git a/xserver/hw/xquartz/xpr/xprScreen.c b/xserver/hw/xquartz/xpr/xprScreen.c index efe2aa882..e37601995 100644 --- a/xserver/hw/xquartz/xpr/xprScreen.c +++ b/xserver/hw/xquartz/xpr/xprScreen.c @@ -359,6 +359,10 @@ have_depth: dfb->blueMask = 0; break; +#if 0 + // Removed because Mountain Lion removed support for + // 15bit backing stores. We can possibly re-add + // this once libXplugin is updated to work around it. case 15: dfb->visuals = TrueColorMask; //LARGE_VISUALS; dfb->preferredCVC = TrueColor; @@ -369,6 +373,7 @@ have_depth: dfb->greenMask = GM_ARGB(0, 5, 5, 5); dfb->blueMask = BM_ARGB(0, 5, 5, 5); break; +#endif // case 24: default: -- cgit v1.2.3