diff options
author | Matthieu Herrb <matthieu@cvs.openbsd.org> | 2016-05-29 12:02:41 +0000 |
---|---|---|
committer | Matthieu Herrb <matthieu@cvs.openbsd.org> | 2016-05-29 12:02:41 +0000 |
commit | 4a991716ac65d28a68f9943d54c4b74ad0b58f65 (patch) | |
tree | c037c3fe64bb15ea67dbf03a96783a8b04085371 /xserver/miext | |
parent | 549cb8bcb6bdd3a7d44f3b9fdc003df777b2b0d2 (diff) |
Update to xserver 1.18.3. Tested by shadchin@ and naddy@.
Note that indirect GLX is now disbled by default.
Diffstat (limited to 'xserver/miext')
-rw-r--r-- | xserver/miext/Makefile.am | 9 | ||||
-rw-r--r-- | xserver/miext/Makefile.in | 12 | ||||
-rw-r--r-- | xserver/miext/damage/Makefile.in | 6 | ||||
-rw-r--r-- | xserver/miext/damage/damage.c | 3 | ||||
-rw-r--r-- | xserver/miext/rootless/Makefile.in | 6 | ||||
-rw-r--r-- | xserver/miext/rootless/rootlessCommon.h | 1 | ||||
-rw-r--r-- | xserver/miext/rootless/rootlessConfig.h | 19 | ||||
-rw-r--r-- | xserver/miext/rootless/rootlessScreen.c | 3 | ||||
-rw-r--r-- | xserver/miext/rootless/rootlessWindow.c | 35 | ||||
-rw-r--r-- | xserver/miext/rootless/rootlessWindow.h | 1 | ||||
-rw-r--r-- | xserver/miext/shadow/Makefile.in | 6 | ||||
-rw-r--r-- | xserver/miext/shadow/shalloc.c | 2 | ||||
-rw-r--r-- | xserver/miext/sync/Makefile.in | 6 |
13 files changed, 47 insertions, 62 deletions
diff --git a/xserver/miext/Makefile.am b/xserver/miext/Makefile.am index b84adc12b..add4d18b0 100644 --- a/xserver/miext/Makefile.am +++ b/xserver/miext/Makefile.am @@ -1,8 +1 @@ -SUBDIRS = sync damage shadow -if XQUARTZ -SUBDIRS += rootless -endif -if XWIN_MULTIWINDOWEXTWM -SUBDIRS += rootless -endif -DIST_SUBDIRS = sync damage shadow rootless +SUBDIRS = sync damage shadow rootless diff --git a/xserver/miext/Makefile.in b/xserver/miext/Makefile.in index d30f855ba..3dc8e93f7 100644 --- a/xserver/miext/Makefile.in +++ b/xserver/miext/Makefile.in @@ -49,16 +49,13 @@ PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ -@XQUARTZ_TRUE@am__append_1 = rootless -@XWIN_MULTIWINDOWEXTWM_TRUE@am__append_2 = rootless subdir = miext DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/ac_define_dir.m4 \ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/xorg-tls.m4 \ - $(top_srcdir)/configure.ac + $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(install_sh) -d @@ -105,6 +102,7 @@ AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \ distdir ETAGS = etags CTAGS = ctags +DIST_SUBDIRS = $(SUBDIRS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) am__relativize = \ dir0=`pwd`; \ @@ -222,7 +220,6 @@ GLAMOR_LIBS = @GLAMOR_LIBS@ GLX_ARCH_DEFINES = @GLX_ARCH_DEFINES@ GLX_DEFINES = @GLX_DEFINES@ GLX_SYS_LIBS = @GLX_SYS_LIBS@ -GLX_TLS = @GLX_TLS@ GL_CFLAGS = @GL_CFLAGS@ GL_LIBS = @GL_LIBS@ GREP = @GREP@ @@ -352,8 +349,6 @@ XEPHYR_INCS = @XEPHYR_INCS@ XEPHYR_LIBS = @XEPHYR_LIBS@ XF86CONFIGDIR = @XF86CONFIGDIR@ XF86CONFIGFILE = @XF86CONFIGFILE@ -XF86VIDMODE_CFLAGS = @XF86VIDMODE_CFLAGS@ -XF86VIDMODE_LIBS = @XF86VIDMODE_LIBS@ XKB_BASE_DIRECTORY = @XKB_BASE_DIRECTORY@ XKB_BIN_DIRECTORY = @XKB_BIN_DIRECTORY@ XKB_COMPILED_DIR = @XKB_COMPILED_DIR@ @@ -477,8 +472,7 @@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ -SUBDIRS = sync damage shadow $(am__append_1) $(am__append_2) -DIST_SUBDIRS = sync damage shadow rootless +SUBDIRS = sync damage shadow rootless all: all-recursive .SUFFIXES: diff --git a/xserver/miext/damage/Makefile.in b/xserver/miext/damage/Makefile.in index 504b9102b..5c3a9aa48 100644 --- a/xserver/miext/damage/Makefile.in +++ b/xserver/miext/damage/Makefile.in @@ -58,8 +58,7 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/ac_define_dir.m4 \ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/xorg-tls.m4 \ - $(top_srcdir)/configure.ac + $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(install_sh) -d @@ -246,7 +245,6 @@ GLAMOR_LIBS = @GLAMOR_LIBS@ GLX_ARCH_DEFINES = @GLX_ARCH_DEFINES@ GLX_DEFINES = @GLX_DEFINES@ GLX_SYS_LIBS = @GLX_SYS_LIBS@ -GLX_TLS = @GLX_TLS@ GL_CFLAGS = @GL_CFLAGS@ GL_LIBS = @GL_LIBS@ GREP = @GREP@ @@ -376,8 +374,6 @@ XEPHYR_INCS = @XEPHYR_INCS@ XEPHYR_LIBS = @XEPHYR_LIBS@ XF86CONFIGDIR = @XF86CONFIGDIR@ XF86CONFIGFILE = @XF86CONFIGFILE@ -XF86VIDMODE_CFLAGS = @XF86VIDMODE_CFLAGS@ -XF86VIDMODE_LIBS = @XF86VIDMODE_LIBS@ XKB_BASE_DIRECTORY = @XKB_BASE_DIRECTORY@ XKB_BIN_DIRECTORY = @XKB_BIN_DIRECTORY@ XKB_COMPILED_DIR = @XKB_COMPILED_DIR@ diff --git a/xserver/miext/damage/damage.c b/xserver/miext/damage/damage.c index 6ef7f9dfc..746e7984f 100644 --- a/xserver/miext/damage/damage.c +++ b/xserver/miext/damage/damage.c @@ -32,6 +32,7 @@ #include <X11/fonts/font.h> #include "dixfontstr.h" #include <X11/fonts/fontstruct.h> +#include <X11/fonts/fontutil.h> #include "mi.h" #include "regionstr.h" #include "globals.h" @@ -1293,7 +1294,7 @@ damageText(DrawablePtr pDrawable, if (!checkGCDamage(pDrawable, pGC)) return; - charinfo = malloc(count * sizeof(CharInfoPtr)); + charinfo = xallocarray(count, sizeof(CharInfoPtr)); if (!charinfo) return; diff --git a/xserver/miext/rootless/Makefile.in b/xserver/miext/rootless/Makefile.in index ba943de82..b0e2029ad 100644 --- a/xserver/miext/rootless/Makefile.in +++ b/xserver/miext/rootless/Makefile.in @@ -57,8 +57,7 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/ac_define_dir.m4 \ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/xorg-tls.m4 \ - $(top_srcdir)/configure.ac + $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(install_sh) -d @@ -216,7 +215,6 @@ GLAMOR_LIBS = @GLAMOR_LIBS@ GLX_ARCH_DEFINES = @GLX_ARCH_DEFINES@ GLX_DEFINES = @GLX_DEFINES@ GLX_SYS_LIBS = @GLX_SYS_LIBS@ -GLX_TLS = @GLX_TLS@ GL_CFLAGS = @GL_CFLAGS@ GL_LIBS = @GL_LIBS@ GREP = @GREP@ @@ -346,8 +344,6 @@ XEPHYR_INCS = @XEPHYR_INCS@ XEPHYR_LIBS = @XEPHYR_LIBS@ XF86CONFIGDIR = @XF86CONFIGDIR@ XF86CONFIGFILE = @XF86CONFIGFILE@ -XF86VIDMODE_CFLAGS = @XF86VIDMODE_CFLAGS@ -XF86VIDMODE_LIBS = @XF86VIDMODE_LIBS@ XKB_BASE_DIRECTORY = @XKB_BASE_DIRECTORY@ XKB_BIN_DIRECTORY = @XKB_BIN_DIRECTORY@ XKB_COMPILED_DIR = @XKB_COMPILED_DIR@ diff --git a/xserver/miext/rootless/rootlessCommon.h b/xserver/miext/rootless/rootlessCommon.h index 7fdea22b3..c3fa2a297 100644 --- a/xserver/miext/rootless/rootlessCommon.h +++ b/xserver/miext/rootless/rootlessCommon.h @@ -94,6 +94,7 @@ typedef struct _RootlessScreenRec { ChangeBorderWidthProcPtr ChangeBorderWidth; PositionWindowProcPtr PositionWindow; ChangeWindowAttributesProcPtr ChangeWindowAttributes; + PaintWindowProcPtr PaintWindow; CreateGCProcPtr CreateGC; CopyWindowProcPtr CopyWindow; diff --git a/xserver/miext/rootless/rootlessConfig.h b/xserver/miext/rootless/rootlessConfig.h index d39ae63d2..4c464b9f5 100644 --- a/xserver/miext/rootless/rootlessConfig.h +++ b/xserver/miext/rootless/rootlessConfig.h @@ -35,28 +35,17 @@ #define _ROOTLESSCONFIG_H #ifdef __APPLE__ +#define ROOTLESS_RESIZE_GRAVITY TRUE +#endif + +/*# define ROOTLESSDEBUG*/ #define ROOTLESS_PROTECT_ALPHA TRUE #define ROOTLESS_REDISPLAY_DELAY 10 -#define ROOTLESS_RESIZE_GRAVITY TRUE -/*# define ROOTLESSDEBUG*/ /* Bit mask for alpha channel with a particular number of bits per pixel. Note that we only care for 32bpp data. Mac OS X uses planar alpha for 16bpp. */ #define RootlessAlphaMask(bpp) ((bpp) == 32 ? 0xFF000000 : 0) -#endif /* __APPLE__ */ - -#if defined(__CYGWIN__) || defined(WIN32) - -#define ROOTLESS_PROTECT_ALPHA NO -#define ROOTLESS_REDISPLAY_DELAY 10 -#undef ROOTLESS_RESIZE_GRAVITY -/*# define ROOTLESSDEBUG*/ - -#define RootlessAlphaMask(bpp) ((bpp) == 32 ? 0xFF000000 : 0) - -#endif /* __CYGWIN__ */ - #endif /* _ROOTLESSCONFIG_H */ diff --git a/xserver/miext/rootless/rootlessScreen.c b/xserver/miext/rootless/rootlessScreen.c index 6226ee84a..471656428 100644 --- a/xserver/miext/rootless/rootlessScreen.c +++ b/xserver/miext/rootless/rootlessScreen.c @@ -473,7 +473,7 @@ expose_1(WindowPtr pWin) if (!pWin->realized) return; - miPaintWindow(pWin, &pWin->borderClip, PW_BACKGROUND); + pWin->drawable.pScreen->PaintWindow(pWin, &pWin->borderClip, PW_BACKGROUND); /* FIXME: comments in windowstr.h indicate that borderClip doesn't include subwindow visibility. But I'm not so sure.. so we may @@ -669,6 +669,7 @@ RootlessWrap(ScreenPtr pScreen) WRAP(CloseScreen); WRAP(CreateGC); WRAP(CopyWindow); + WRAP(PaintWindow); WRAP(GetImage); WRAP(SourceValidate); WRAP(CreateWindow); diff --git a/xserver/miext/rootless/rootlessWindow.c b/xserver/miext/rootless/rootlessWindow.c index a8f296a39..e3042990c 100644 --- a/xserver/miext/rootless/rootlessWindow.c +++ b/xserver/miext/rootless/rootlessWindow.c @@ -92,7 +92,7 @@ RootlessNativeWindowStateChanged(WindowPtr pWin, unsigned int state) winRec->is_offscreen = ((state & XP_WINDOW_STATE_OFFSCREEN) != 0); winRec->is_obscured = ((state & XP_WINDOW_STATE_OBSCURED) != 0); - pWin->rootlessUnhittable = winRec->is_offscreen; + pWin->unhittable = winRec->is_offscreen; } void @@ -569,7 +569,7 @@ RootlessReorderWindow(WindowPtr pWin) newPrevW = pWin->prevSib; while (newPrevW && (WINREC(newPrevW) == NULL || !newPrevW->realized || - newPrevW->rootlessUnhittable != pWin->rootlessUnhittable)) + newPrevW->unhittable != pWin->unhittable)) newPrevW = newPrevW->prevSib; newPrev = newPrevW != NULL ? WINREC(newPrevW) : NULL; @@ -720,7 +720,7 @@ RootlessResizeCopyWindow(WindowPtr pWin, DDXPointRec ptOldOrg, /* * RootlessCopyWindow * Update *new* location of window. Old location is redrawn with - * miPaintWindow. Cloned from fbCopyWindow. + * PaintWindow. Cloned from fbCopyWindow. * The original always draws on the root pixmap, which we don't have. * Instead, draw on the parent window's pixmap. */ @@ -794,6 +794,27 @@ RootlessCopyWindow(WindowPtr pWin, DDXPointRec ptOldOrg, RegionPtr prgnSrc) RL_DEBUG_MSG("copywindowFB end\n"); } +void +RootlessPaintWindow(WindowPtr pWin, RegionPtr prgn, int what) +{ + ScreenPtr pScreen = pWin->drawable.pScreen; + + if (IsFramedWindow(pWin)) { + RootlessStartDrawing(pWin); + RootlessDamageRegion(pWin, prgn); + + if (pWin->backgroundState == ParentRelative) { + if ((what == PW_BACKGROUND) || + (what == PW_BORDER && !pWin->borderIsPixel)) + RootlessSetPixmapOfAncestors(pWin); + } + } + + SCREEN_UNWRAP(pScreen, PaintWindow); + pScreen->PaintWindow(pWin, prgn, what); + SCREEN_WRAP(pScreen, PaintWindow); +} + /* * Window resize procedures */ @@ -949,7 +970,7 @@ StartFrameResize(WindowPtr pWin, Bool gravity, copy_rect_width = copy_rect.x2 - copy_rect.x1; copy_rect_height = copy_rect.y2 - copy_rect.y1; copy_rowbytes = ((copy_rect_width * Bpp) + 31) & ~31; - gResizeDeathBits = malloc(copy_rowbytes * copy_rect_height); + gResizeDeathBits = xallocarray(copy_rowbytes, copy_rect_height); if (copy_rect_width * copy_rect_height > rootless_CopyBytes_threshold && @@ -998,7 +1019,7 @@ StartFrameResize(WindowPtr pWin, Bool gravity, RootlessStartDrawing(pWin); - gResizeDeathBits = malloc(winRec->bytesPerRow * winRec->height); + gResizeDeathBits = xallocarray(winRec->bytesPerRow, winRec->height); memcpy(gResizeDeathBits, winRec->pixelData, winRec->bytesPerRow * winRec->height); @@ -1365,7 +1386,7 @@ RootlessReparentWindow(WindowPtr pWin, WindowPtr pPriorParent) pTopWin = TopLevelParent(pWin); assert(pTopWin != pWin); - pWin->rootlessUnhittable = FALSE; + pWin->unhittable = FALSE; DeleteProperty(serverClient, pWin, xa_native_window_id()); @@ -1503,7 +1524,7 @@ RootlessOrderAllWindows(Bool include_unhitable) continue; if (RootlessEnsureFrame(pWin) == NULL) continue; - if (!include_unhitable && pWin->rootlessUnhittable) + if (!include_unhitable && pWin->unhittable) continue; RootlessReorderWindow(pWin); } diff --git a/xserver/miext/rootless/rootlessWindow.h b/xserver/miext/rootless/rootlessWindow.h index d3955fc89..4fd34d54d 100644 --- a/xserver/miext/rootless/rootlessWindow.h +++ b/xserver/miext/rootless/rootlessWindow.h @@ -48,6 +48,7 @@ Bool RootlessUnrealizeWindow(WindowPtr pWin); void RootlessRestackWindow(WindowPtr pWin, WindowPtr pOldNextSib); void RootlessCopyWindow(WindowPtr pWin, DDXPointRec ptOldOrg, RegionPtr prgnSrc); +void RootlessPaintWindow(WindowPtr pWin, RegionPtr prgn, int what); void RootlessMoveWindow(WindowPtr pWin, int x, int y, WindowPtr pSib, VTKind kind); void RootlessResizeWindow(WindowPtr pWin, int x, int y, unsigned int w, diff --git a/xserver/miext/shadow/Makefile.in b/xserver/miext/shadow/Makefile.in index 8fb172bad..1fe16b504 100644 --- a/xserver/miext/shadow/Makefile.in +++ b/xserver/miext/shadow/Makefile.in @@ -58,8 +58,7 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/ac_define_dir.m4 \ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/xorg-tls.m4 \ - $(top_srcdir)/configure.ac + $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(install_sh) -d @@ -252,7 +251,6 @@ GLAMOR_LIBS = @GLAMOR_LIBS@ GLX_ARCH_DEFINES = @GLX_ARCH_DEFINES@ GLX_DEFINES = @GLX_DEFINES@ GLX_SYS_LIBS = @GLX_SYS_LIBS@ -GLX_TLS = @GLX_TLS@ GL_CFLAGS = @GL_CFLAGS@ GL_LIBS = @GL_LIBS@ GREP = @GREP@ @@ -382,8 +380,6 @@ XEPHYR_INCS = @XEPHYR_INCS@ XEPHYR_LIBS = @XEPHYR_LIBS@ XF86CONFIGDIR = @XF86CONFIGDIR@ XF86CONFIGFILE = @XF86CONFIGFILE@ -XF86VIDMODE_CFLAGS = @XF86VIDMODE_CFLAGS@ -XF86VIDMODE_LIBS = @XF86VIDMODE_LIBS@ XKB_BASE_DIRECTORY = @XKB_BASE_DIRECTORY@ XKB_BIN_DIRECTORY = @XKB_BIN_DIRECTORY@ XKB_COMPILED_DIR = @XKB_COMPILED_DIR@ diff --git a/xserver/miext/shadow/shalloc.c b/xserver/miext/shadow/shalloc.c index e555135b9..6a79085c4 100644 --- a/xserver/miext/shadow/shalloc.c +++ b/xserver/miext/shadow/shalloc.c @@ -44,6 +44,6 @@ shadowAlloc(int width, int height, int bpp) /* Cant use PixmapBytePad -- the structure is probably not initialized yet */ stride = BitmapBytePad(width * bpp); - fb = malloc(stride * height); + fb = xallocarray(stride, height); return fb; } diff --git a/xserver/miext/sync/Makefile.in b/xserver/miext/sync/Makefile.in index b41a813ac..be3cab391 100644 --- a/xserver/miext/sync/Makefile.in +++ b/xserver/miext/sync/Makefile.in @@ -59,8 +59,7 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/ac_define_dir.m4 \ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/xorg-tls.m4 \ - $(top_srcdir)/configure.ac + $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(install_sh) -d @@ -251,7 +250,6 @@ GLAMOR_LIBS = @GLAMOR_LIBS@ GLX_ARCH_DEFINES = @GLX_ARCH_DEFINES@ GLX_DEFINES = @GLX_DEFINES@ GLX_SYS_LIBS = @GLX_SYS_LIBS@ -GLX_TLS = @GLX_TLS@ GL_CFLAGS = @GL_CFLAGS@ GL_LIBS = @GL_LIBS@ GREP = @GREP@ @@ -381,8 +379,6 @@ XEPHYR_INCS = @XEPHYR_INCS@ XEPHYR_LIBS = @XEPHYR_LIBS@ XF86CONFIGDIR = @XF86CONFIGDIR@ XF86CONFIGFILE = @XF86CONFIGFILE@ -XF86VIDMODE_CFLAGS = @XF86VIDMODE_CFLAGS@ -XF86VIDMODE_LIBS = @XF86VIDMODE_LIBS@ XKB_BASE_DIRECTORY = @XKB_BASE_DIRECTORY@ XKB_BIN_DIRECTORY = @XKB_BIN_DIRECTORY@ XKB_COMPILED_DIR = @XKB_COMPILED_DIR@ |