Hello community, here is the log from the commit of package xorg-x11-server for openSUSE:Factory checked in at 2013-12-22 19:39:19 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/xorg-x11-server (Old) and /work/SRC/openSUSE:Factory/.xorg-x11-server.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "xorg-x11-server" Changes: -------- --- /work/SRC/openSUSE:Factory/xorg-x11-server/xorg-x11-server.changes 2013-12-19 07:22:05.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.xorg-x11-server.new/xorg-x11-server.changes 2013-12-22 19:39:20.000000000 +0100 @@ -1,0 +2,9 @@ +Fri Dec 20 11:28:33 UTC 2013 - tobias.johannes.klausm...@mni.thm.de + +- Update to version 1.14.99.905 (1.15 RC5): + We're getting perilously close to 1.15 now; this should be the last RC + before we're done next week. If you haven't bothered to test a recent + candidate, now would be an awesome time to do so and make sure we're + releasing something that's going to work for you. + +------------------------------------------------------------------- Old: ---- xorg-server-1.14.99.904.tar.bz2 New: ---- xorg-server-1.14.99.905.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ xorg-x11-server.spec ++++++ --- /var/tmp/diff_new_pack.nvIUZZ/_old 2013-12-22 19:39:21.000000000 +0100 +++ /var/tmp/diff_new_pack.nvIUZZ/_new 2013-12-22 19:39:21.000000000 +0100 @@ -18,7 +18,7 @@ Name: xorg-x11-server -%define dirsuffix 1.14.99.904 +%define dirsuffix 1.14.99.905 Summary: X License: GPL-2.0+ and MIT ++++++ xorg-server-1.14.99.904.tar.bz2 -> xorg-server-1.14.99.905.tar.bz2 ++++++ ++++ 3132 lines of diff (skipped) ++++ retrying with extended exclude list diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xorg-server-1.14.99.904/ChangeLog new/xorg-server-1.14.99.905/ChangeLog --- old/xorg-server-1.14.99.904/ChangeLog 2013-12-11 16:51:54.000000000 +0100 +++ new/xorg-server-1.14.99.905/ChangeLog 2013-12-19 23:32:05.000000000 +0100 @@ -1,3 +1,208 @@ +commit a68df147421da21528b5be2d34678383922fa352 +Author: Keith Packard <kei...@keithp.com> +Date: Thu Dec 19 14:31:07 2013 -0800 + + Bump version to 1.14.99.905 (1.15 RC5) + + Another week, another RC. This should be the last before 1.15 final + + Signed-off-by: Keith Packard <kei...@keithp.com> + +commit 4b1ead9d3400acc3402c2480d7cc0527750c32f0 +Merge: 4d62646 929795d +Author: Keith Packard <kei...@keithp.com> +Date: Thu Dec 19 14:14:59 2013 -0800 + + Merge remote-tracking branch 'whot/for-keith' + +commit 4d62646142718024b0981eb4f1fd0131e829161f +Merge: f4bfb14 81ba89d +Author: Keith Packard <kei...@keithp.com> +Date: Mon Dec 16 09:27:57 2013 -0800 + + Merge remote-tracking branch 'jeremyhu/master' + +commit f4bfb14f53a939574da1f5995f0dad949898b86a +Author: Adam Jackson <a...@redhat.com> +Date: Thu Dec 12 10:57:40 2013 -0500 + + configure: Fix a typo near dri3/shmfence detection + + " is not the mate of ]. + + Reviewed-by: Jasper St. Pierre <jstpie...@mecheye.net> + Signed-off-by: Adam Jackson <a...@redhat.com> + +commit 8248b4af31ef71ac03158871b77f20eb456dbe38 +Author: Adam Jackson <a...@redhat.com> +Date: Fri Dec 13 15:07:48 2013 -0500 + + glx: Add null pointer protection to __glGetProcAddress + + This can't happen when GLX is the backing window system, but can + elsewhere. We may as well protect against it at a high level. + + Reviewed-by: Eric Anholt <e...@anholt.net> + Signed-off-by: Adam Jackson <a...@redhat.com> + +commit 128449dd6498a2f74c3770f89a9dae0f70e2b351 +Author: Adam Jackson <a...@redhat.com> +Date: Fri Dec 13 11:39:16 2013 -0500 + + present: Don't use the major/minor version from the protocol headers + + We want to advertise the version we implement, not the version the + protocol headers happen to describe. + + Reviewed-by: Jasper St. Pierre <<jstpie...@mecheye.net> + Signed-off-by: Adam Jackson <a...@redhat.com> + +commit ec6087bf070131bc3a26848fb9fb840f09b0e19d +Author: Adam Jackson <a...@redhat.com> +Date: Fri Dec 13 11:36:38 2013 -0500 + + dri3: Don't use the major/minor version from the protocol headers + + We want to advertise the version we implement, not the version the + protocol headers happen to describe. + + Reviewed-by: Jasper St. Pierre <<jstpie...@mecheye.net> + Signed-off-by: Adam Jackson <a...@redhat.com> + +commit e6fafd3de70d315130fb6e5732cfd02a5901b788 +Author: Adam Jackson <a...@redhat.com> +Date: Fri Dec 13 11:28:59 2013 -0500 + + dri3: Guard against buggy clients + + There's nothing to stop a client from sending these requests to screens + without DRI3 support, and if they do, we'll crash. Let's not do that. + + Reviewed-by: Jasper St. Pierre <<jstpie...@mecheye.net> + Signed-off-by: Adam Jackson <a...@redhat.com> + +commit 81ba89d6703a22178a153aa39478ba2d4bde262b +Author: Jeremy Huddleston Sequoia <jerem...@apple.com> +Date: Fri Dec 13 01:39:44 2013 -0800 + + configure.ac: Add PRESENT_LIB to XQUARTZ_LIBS + + Undefined symbols for architecture x86_64: + "_present_extension_init", referenced from: + _staticExtensions in libXquartz.a(miinitext.o) + "_present_register_complete_notify", referenced from: + ___glXregisterPresentCompleteNotify in libglx.a(glxcmds.o) + + Signed-off-by: Jeremy Huddleston Sequoia <jerem...@apple.com> + +commit d7c9235ee261b0f780320985233e00dec5e2689c +Author: Jeremy Huddleston Sequoia <jerem...@apple.com> +Date: Sat Dec 7 01:36:33 2013 -0800 + + XQuartz: Use asl_log_descriptor to log stdout/stderr of child processes + + Signed-off-by: Jeremy Huddleston Sequoia <jerem...@apple.com> + +commit ad8111d7c971ce448905c733d65ba0cfc72bdca4 +Author: Jeremy Huddleston Sequoia <jerem...@apple.com> +Date: Sat Dec 7 01:14:37 2013 -0800 + + darwin: Don't leave stdin/stdout closed + + <rdar://problem/15609419> + + Signed-off-by: Jeremy Huddleston Sequoia <jerem...@apple.com> + +commit 929795d50d788358d6269ce423f72c6cc40e334b +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Tue Dec 3 10:14:51 2013 +1000 + + dix: fix check for grab type + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + +commit 23394c7fea0f5c33333198c87ecfecc9f6c6a791 +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Tue Dec 3 08:36:45 2013 +1000 + + Xi: ungrab device when releasing a passive grab without ButtonReleaseMask (#71878) + + If an touch triggers an async button grab and that grab does not have the + ButtonReleaseMask set, the TouchEnd is never delivered, deliveries is 0 and + the grab is never deactivated. + + If the grab is pointer async and keyboard sync, the keyboard events are stuck + in EnqueueEvent until some other pointer event terminates the grab. + + Change this to check for the number of listeners. If we're about to deliver a + TouchEnd to a passive pointer grab, the number of listeners is already 1 - + pointer grabs always accept so other listeners were removed. + + X.Org Bug 71878 <http://bugs.freedesktop.org/show_bug.cgi?id=71878> + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + +commit c1d30b5bd7f90e68bc38404fd0cc32578d6d3018 +Author: Ben Gamari <bgamari.f...@gmail.com> +Date: Thu Nov 21 21:24:20 2013 -0500 + + Xi: Don't ActivateEarlyAccept POINTER_REGULAR listeners + + Bug #71878 describes a bug resulting in the server ceasing to respond to + keyboard input after a touch event. The problem might be the following: + + DeliverTouchBeginEvent tries to deliver an event to a listener of type + LISTENER_POINTER_REGULAR, taking the following if branch, + + if (listener->type == LISTENER_POINTER_REGULAR || + listener->type == LISTENER_POINTER_GRAB) { + rc = DeliverTouchEmulatedEvent(dev, ti, ev, listener, client, win, + grab, xi2mask); + if (rc == Success) { + listener->state = LISTENER_IS_OWNER; + /* async grabs cannot replay, so automatically accept this touch */ + if (dev->deviceGrab.grab && + dev->deviceGrab.fromPassiveGrab && + dev->deviceGrab.grab->pointerMode == GrabModeAsync) + ActivateEarlyAccept(dev, ti); + } + goto out; + } + + DeliverTouchEmulatedEvent succeeds. The deviceGrab meets all + three of the conditions of the inner if, enters + ActivateEarlyAccept which then fails due to, + + BUG_RETURN(ti->listeners[0].type != LISTENER_GRAB && + ti->listeners[0].type != LISTENER_POINTER_GRAB); + + That is, despite listener->type == LISTENER_POINTER_REGULAR. With my + non-existent knowledge of XINPUT, it seems like the solution here + might be to only ActivateEarlyAccept when listener->type == + LISTENER_POINTER_GRAB. + + Signed-off-by: Ben Gamari <bgamari.f...@gmail.com> + Reviewed-by: Peter Hutterer <peter.hutte...@who-t.net> + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + +commit fe07ec19e212a68076560d243a2a935c54589068 +Author: Keith Packard <kei...@keithp.com> +Date: Tue Dec 10 11:27:47 2013 -0800 + + present: recursively set window pixmaps on flip + + Newly created windows inherit the pixmap of their parent, similarly, + reparenting a tree inherits the pixmap of the destination tree. + + Making present preserve the invariant that unredirected windows always + have the same pixmap as their parent ensures that the above cases work + correctly. + + v2: name the recursive function to 'set_tree_pixmap' instead of 'set_window_pixmap' + + Signed-off-by: Keith Packard <kei...@keithp.com> + Reviewed-by: Adam Jackson <a...@redhat.com> + commit b3533d0b212b6747a8f9a01931253d6bdb648ee2 Author: Keith Packard <kei...@keithp.com> Date: Tue Dec 10 10:29:11 2013 -0800 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xorg-server-1.14.99.904/Xi/exevents.c new/xorg-server-1.14.99.905/Xi/exevents.c --- old/xorg-server-1.14.99.904/Xi/exevents.c 2013-10-30 05:00:13.000000000 +0100 +++ new/xorg-server-1.14.99.905/Xi/exevents.c 2013-12-19 23:14:59.000000000 +0100 @@ -1413,7 +1413,8 @@ !(ev->device_event.flags & TOUCH_CLIENT_ID)) TouchListenerAcceptReject(dev, ti, 0, XIAcceptTouch); - if (deliveries && ev->any.type == ET_TouchEnd && + if (ev->any.type == ET_TouchEnd && + ti->num_listeners == 1 && !dev->button->buttonsDown && dev->deviceGrab.fromPassiveGrab && GrabIsPointerGrab(grab)) { (*dev->deviceGrab.DeactivateGrab) (dev); @@ -1845,7 +1846,8 @@ if (rc == Success) { listener->state = LISTENER_IS_OWNER; /* async grabs cannot replay, so automatically accept this touch */ - if (dev->deviceGrab.grab && + if (listener->type == LISTENER_POINTER_GRAB && + dev->deviceGrab.grab && dev->deviceGrab.fromPassiveGrab && dev->deviceGrab.grab->pointerMode == GrabModeAsync) ActivateEarlyAccept(dev, ti); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xorg-server-1.14.99.904/configure.ac new/xorg-server-1.14.99.905/configure.ac --- old/xorg-server-1.14.99.904/configure.ac 2013-12-10 19:29:01.000000000 +0100 +++ new/xorg-server-1.14.99.905/configure.ac 2013-12-19 23:20:49.000000000 +0100 @@ -26,9 +26,9 @@ dnl Process this file with autoconf to create configure. AC_PREREQ(2.60) -AC_INIT([xorg-server], 1.14.99.904, [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server) -RELEASE_DATE="2013-12-10" -RELEASE_NAME="Chai" +AC_INIT([xorg-server], 1.14.99.905, [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server) +RELEASE_DATE="2013-12-19" +RELEASE_NAME="Kraken" AC_CONFIG_SRCDIR([Makefile.am]) AM_INIT_AUTOMAKE([foreign dist-bzip2]) AC_USE_SYSTEM_EXTENSIONS @@ -1218,7 +1218,7 @@ yes,yes | auto,yes) ;; yes,no) - AC_MSG_ERROR("DRI3 requested, but xshmfence not found.]) + AC_MSG_ERROR([DRI3 requested, but xshmfence not found.]) DRI3=no ;; no,*) @@ -2158,7 +2158,7 @@ AC_DEFINE(XQUARTZ,1,[Have Quartz]) AC_DEFINE(ROOTLESS,1,[Build Rootless code]) - XQUARTZ_LIBS="$FB_LIB $FIXES_LIB $XEXT_LIB $DBE_LIB $RECORD_LIB $RANDR_LIB $RENDER_LIB $DAMAGE_LIB $MIEXT_SYNC_LIB $MIEXT_DAMAGE_LIB $MIEXT_SHADOW_LIB $XI_LIB $XKB_LIB $XKB_STUB_LIB $XPSTUBS_LIB" + XQUARTZ_LIBS="$FB_LIB $FIXES_LIB $XEXT_LIB $DBE_LIB $RECORD_LIB $RANDR_LIB $RENDER_LIB $DAMAGE_LIB $MIEXT_SYNC_LIB $MIEXT_DAMAGE_LIB $MIEXT_SHADOW_LIB $XI_LIB $XKB_LIB $XKB_STUB_LIB $XPSTUBS_LIB $PRESENT_LIB" AC_SUBST([XQUARTZ_LIBS]) AC_CHECK_LIB([Xplugin],[xp_init],[:]) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xorg-server-1.14.99.904/dix/events.c new/xorg-server-1.14.99.905/dix/events.c --- old/xorg-server-1.14.99.904/dix/events.c 2013-12-10 16:09:51.000000000 +0100 +++ new/xorg-server-1.14.99.905/dix/events.c 2013-12-19 23:14:59.000000000 +0100 @@ -4696,7 +4696,7 @@ filter = GetEventFilter(mouse, (xEvent *) event); - if (grab && grab->type == XI2) { + if (grab && grab->grabtype == XI2) { Mask mask; mask = xi2mask_isset(grab->xi2mask, mouse, type); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xorg-server-1.14.99.904/dri3/dri3_request.c new/xorg-server-1.14.99.905/dri3/dri3_request.c --- old/xorg-server-1.14.99.904/dri3/dri3_request.c 2013-11-01 01:07:14.000000000 +0100 +++ new/xorg-server-1.14.99.905/dri3/dri3_request.c 2013-12-16 18:27:54.000000000 +0100 @@ -29,6 +29,7 @@ #include <unistd.h> #include <xace.h> #include "../Xext/syncsdk.h" +#include <protocol-versions.h> static int proc_dri3_query_version(ClientPtr client) @@ -38,8 +39,8 @@ .type = X_Reply, .sequenceNumber = client->sequence, .length = 0, - .majorVersion = DRI3_MAJOR, - .minorVersion = DRI3_MINOR + .majorVersion = SERVER_DRI3_MAJOR_VERSION, + .minorVersion = SERVER_DRI3_MINOR_VERSION }; REQUEST_SIZE_MATCH(xDRI3QueryVersionReq); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xorg-server-1.14.99.904/dri3/dri3_screen.c new/xorg-server-1.14.99.905/dri3/dri3_screen.c --- old/xorg-server-1.14.99.904/dri3/dri3_screen.c 2013-11-01 01:07:14.000000000 +0100 +++ new/xorg-server-1.14.99.905/dri3/dri3_screen.c 2013-12-15 08:48:08.000000000 +0100 @@ -55,6 +55,9 @@ dri3_screen_info_ptr info = ds->info; PixmapPtr pixmap; + if (!info || !info->pixmap_from_fd) + return BadImplementation; + pixmap = (*info->pixmap_from_fd) (screen, fd, width, height, stride, depth, bpp); if (!pixmap) return BadAlloc; @@ -71,6 +74,9 @@ dri3_screen_info_ptr info = ds->info; int fd; + if (!info || !info->fd_from_pixmap) + return BadImplementation; + fd = (*info->fd_from_pixmap)(screen, pixmap, stride, size); if (fd < 0) return BadAlloc; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xorg-server-1.14.99.904/glx/glxext.c new/xorg-server-1.14.99.905/glx/glxext.c --- old/xorg-server-1.14.99.904/glx/glxext.c 2013-12-10 17:05:25.000000000 +0100 +++ new/xorg-server-1.14.99.905/glx/glxext.c 2013-12-16 18:27:54.000000000 +0100 @@ -554,7 +554,9 @@ void *__glGetProcAddress(const char *proc) { - return _get_proc_address(proc); + void *ret = _get_proc_address(proc); + + return ret ? ret : NoopDDA; } /* diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xorg-server-1.14.99.904/hw/xquartz/X11Controller.m new/xorg-server-1.14.99.905/hw/xquartz/X11Controller.m --- old/xorg-server-1.14.99.904/hw/xquartz/X11Controller.m 2013-11-12 01:08:57.000000000 +0100 +++ new/xorg-server-1.14.99.905/hw/xquartz/X11Controller.m 2013-12-16 18:27:57.000000000 +0100 @@ -347,7 +347,7 @@ const char *newargv[4]; char buf[128]; char *s; -#if 0 && MAC_OS_X_VERSION_MAX_ALLOWED >= 1080 +#if MAC_OS_X_VERSION_MAX_ALLOWED >= 1080 int stdout_pipe[2]; int stderr_pipe[2]; #endif @@ -363,7 +363,7 @@ setenv("DISPLAY", buf, TRUE); } -#if 0 && MAC_OS_X_VERSION_MAX_ALLOWED >= 1080 +#if MAC_OS_X_VERSION_MAX_ALLOWED >= 1080 if (asl_log_descriptor) { char *asl_sender; aslmsg amsg = asl_new(ASL_TYPE_MSG); @@ -413,7 +413,7 @@ _exit(1); case 0: /* child2 */ -#if 0 && MAC_OS_X_VERSION_MAX_ALLOWED >= 1080 +#if MAC_OS_X_VERSION_MAX_ALLOWED >= 1080 if (asl_log_descriptor) { /* Replace our stdout/stderr */ dup2(stdout_pipe[1], STDOUT_FILENO); @@ -442,7 +442,7 @@ waitpid(child1, &status, 0); } -#if 0 && MAC_OS_X_VERSION_MAX_ALLOWED >= 1080 +#if MAC_OS_X_VERSION_MAX_ALLOWED >= 1080 if (asl_log_descriptor) { /* Close the write ends of the pipe */ close(stdout_pipe[1]); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xorg-server-1.14.99.904/include/protocol-versions.h new/xorg-server-1.14.99.905/include/protocol-versions.h --- old/xorg-server-1.14.99.904/include/protocol-versions.h 2013-11-12 00:12:50.000000000 +0100 +++ new/xorg-server-1.14.99.905/include/protocol-versions.h 2013-12-15 08:48:09.000000000 +0100 @@ -46,6 +46,10 @@ #define SERVER_DAMAGE_MAJOR_VERSION 1 #define SERVER_DAMAGE_MINOR_VERSION 1 +/* DRI3 */ +#define SERVER_DRI3_MAJOR_VERSION 1 +#define SERVER_DRI3_MINOR_VERSION 0 + /* DMX */ #define SERVER_DMX_MAJOR_VERSION 2 #define SERVER_DMX_MINOR_VERSION 2 @@ -63,6 +67,10 @@ #define SERVER_PANORAMIX_MAJOR_VERSION 1 #define SERVER_PANORAMIX_MINOR_VERSION 1 +/* Present */ +#define SERVER_PRESENT_MAJOR_VERSION 1 +#define SERVER_PRESENT_MINOR_VERSION 0 + /* RandR */ #define SERVER_RANDR_MAJOR_VERSION 1 #define SERVER_RANDR_MINOR_VERSION 4 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xorg-server-1.14.99.904/os/osinit.c new/xorg-server-1.14.99.905/os/osinit.c --- old/xorg-server-1.14.99.904/os/osinit.c 2013-11-12 00:15:00.000000000 +0100 +++ new/xorg-server-1.14.99.905/os/osinit.c 2013-12-16 18:27:57.000000000 +0100 @@ -213,10 +213,18 @@ dlinfo(RTLD_SELF, RTLD_DI_SETSIGNAL, &failure_signal); #endif -#if !defined(__CYGWIN__) +#if !defined(XQUARTZ) /* STDIN is already /dev/null and STDOUT/STDERR is managed by console_redirect.c */ +# if defined(__APPLE__) + int devnullfd = open(devnull, O_RDWR, 0); + assert(devnullfd > 2); + + dup2(devnullfd, STDIN_FILENO); + dup2(devnullfd, STDOUT_FILENO); + close(devnullfd); +# elif !defined(__CYGWIN__) fclose(stdin); fclose(stdout); -#endif +# endif /* * If a write of zero bytes to stderr returns non-zero, i.e. -1, * then writing to stderr failed, and we'll write somewhere else @@ -250,6 +258,7 @@ setlinebuf(stderr); #endif } +#endif /* !XQUARTZ */ #if !defined(WIN32) || defined(__CYGWIN__) if (getpgrp() == 0) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xorg-server-1.14.99.904/present/present.c new/xorg-server-1.14.99.905/present/present.c --- old/xorg-server-1.14.99.904/present/present.c 2013-12-11 16:50:20.000000000 +0100 +++ new/xorg-server-1.14.99.905/present/present.c 2013-12-16 18:27:55.000000000 +0100 @@ -312,6 +312,36 @@ } } +struct pixmap_visit { + PixmapPtr old; + PixmapPtr new; +}; + +static int +present_set_tree_pixmap_visit(WindowPtr window, pointer data) +{ + struct pixmap_visit *visit = data; + ScreenPtr screen = window->drawable.pScreen; + + if ((*screen->GetWindowPixmap)(window) != visit->old) + return WT_DONTWALKCHILDREN; + (*screen->SetWindowPixmap)(window, visit->new); + return WT_WALKCHILDREN; +} + +static void +present_set_tree_pixmap(WindowPtr window, PixmapPtr pixmap) +{ + struct pixmap_visit visit; + ScreenPtr screen = window->drawable.pScreen; + + visit.old = (*screen->GetWindowPixmap)(window); + visit.new = pixmap; + if (visit.old == visit.new) + return; + TraverseTree(window, present_set_tree_pixmap_visit, &visit); +} + static void present_unflip(ScreenPtr screen) { @@ -321,10 +351,10 @@ assert (!screen_priv->flip_pending); if (screen_priv->flip_window) - (*screen->SetWindowPixmap)(screen_priv->flip_window, - (*screen->GetScreenPixmap)(screen)); + present_set_tree_pixmap(screen_priv->flip_window, + (*screen->GetScreenPixmap)(screen)); - (*screen->SetWindowPixmap)(screen->root, (*screen->GetScreenPixmap)(screen)); + present_set_tree_pixmap(screen->root, (*screen->GetScreenPixmap)(screen)); /* Update the screen pixmap with the current flip pixmap contents */ @@ -527,10 +557,10 @@ * 2) Set current flip window pixmap to the new pixmap */ if (screen_priv->flip_window && screen_priv->flip_window != window) - (*screen->SetWindowPixmap)(screen_priv->flip_window, - (*screen->GetScreenPixmap)(screen)); - (*screen->SetWindowPixmap)(vblank->window, vblank->pixmap); - (*screen->SetWindowPixmap)(screen->root, vblank->pixmap); + present_set_tree_pixmap(screen_priv->flip_window, + (*screen->GetScreenPixmap)(screen)); + present_set_tree_pixmap(vblank->window, vblank->pixmap); + present_set_tree_pixmap(screen->root, vblank->pixmap); /* Report update region as damaged */ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xorg-server-1.14.99.904/present/present_request.c new/xorg-server-1.14.99.905/present/present_request.c --- old/xorg-server-1.14.99.904/present/present_request.c 2013-11-01 01:07:14.000000000 +0100 +++ new/xorg-server-1.14.99.905/present/present_request.c 2013-12-16 18:27:55.000000000 +0100 @@ -26,6 +26,7 @@ #include "present_priv.h" #include "randrstr.h" +#include <protocol-versions.h> static int proc_present_query_version(ClientPtr client) @@ -35,8 +36,8 @@ .type = X_Reply, .sequenceNumber = client->sequence, .length = 0, - .majorVersion = PRESENT_MAJOR, - .minorVersion = PRESENT_MINOR + .majorVersion = SERVER_PRESENT_MAJOR_VERSION, + .minorVersion = SERVER_PRESENT_MINOR_VERSION }; REQUEST_SIZE_MATCH(xPresentQueryVersionReq); -- To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org For additional commands, e-mail: opensuse-commit+h...@opensuse.org