[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

xorg-server: Changes to 'debian-experimental'



 ChangeLog                                          |  621 +++++++++++++++++++++
 Xext/saver.c                                       |    8 
 Xi/exevents.c                                      |  155 ++---
 Xi/ungrdevb.c                                      |    2 
 Xi/ungrdevk.c                                      |    2 
 Xi/xipassivegrab.c                                 |    2 
 configure.ac                                       |    6 
 debian/changelog                                   |   52 +
 debian/control                                     |   11 
 debian/patches/10_Include-missing-selection-h.diff |   20 
 debian/patches/series                              |    1 
 debian/rules                                       |    6 
 dix/cursor.c                                       |   29 
 dix/devices.c                                      |    4 
 dix/dispatch.c                                     |    3 
 dix/events.c                                       |  101 +--
 dix/grabs.c                                        |   21 
 dix/main.c                                         |    3 
 dix/pixmap.c                                       |    2 
 dix/touch.c                                        |  114 +++
 dix/window.c                                       |   15 
 fb/fbpixmap.c                                      |    1 
 glx/glxdri.c                                       |    2 
 hw/xfree86/common/xf86platformBus.c                |    8 
 hw/xfree86/modes/xf86Crtc.c                        |   34 -
 hw/xfree86/modes/xf86Cursors.c                     |    4 
 hw/xfree86/ramdac/xf86Cursor.c                     |   28 
 include/cursor.h                                   |    4 
 include/dixgrabs.h                                 |    2 
 include/eventstr.h                                 |    1 
 include/input.h                                    |    2 
 include/inputstr.h                                 |    2 
 render/animcur.c                                   |    3 
 xfixes/cursor.c                                    |    6 
 34 files changed, 1057 insertions(+), 218 deletions(-)

New commits:
commit 7b684f9fe7edafda652bf7c003332d5f66dd728b
Author: Julien Cristau <jcristau@debian.org>
Date:   Sat Jul 27 13:18:50 2013 +0200

    Upload to experimental

diff --git a/debian/changelog b/debian/changelog
index c264855..63f9c84 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,4 +1,4 @@
-xorg-server (2:1.14.2.901-1) UNRELEASED; urgency=low
+xorg-server (2:1.14.2.901-1) experimental; urgency=low
 
   * New upstream release
 
@@ -29,7 +29,7 @@ xorg-server (2:1.14.2.901-1) UNRELEASED; urgency=low
     d/rules.
   * Make build-deps match xserver-xorg-dev dependencies and configure checks.
 
- -- Julien Cristau <jcristau@debian.org>  Fri, 26 Jul 2013 14:05:51 +0200
+ -- Julien Cristau <jcristau@debian.org>  Sat, 27 Jul 2013 13:18:28 +0200
 
 xorg-server (2:1.12.4-6.1) unstable; urgency=low
 

commit d227ac876d909f0ace65ff6a39f93fec05e5135d
Author: Julien Cristau <jcristau@debian.org>
Date:   Sat Jul 27 13:17:59 2013 +0200

    Make build-deps match xserver-xorg-dev dependencies and configure checks.

diff --git a/debian/changelog b/debian/changelog
index eef11b2..c264855 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -27,6 +27,7 @@ xorg-server (2:1.14.2.901-1) UNRELEASED; urgency=low
   * Merge sid branch up to 2:1.12.4-6.1.
   * Drop old --disable-builddocs, --disable-xcalibrate configure options from
     d/rules.
+  * Make build-deps match xserver-xorg-dev dependencies and configure checks.
 
  -- Julien Cristau <jcristau@debian.org>  Fri, 26 Jul 2013 14:05:51 +0200
 
diff --git a/debian/control b/debian/control
index ee4b6ef..90aaa86 100644
--- a/debian/control
+++ b/debian/control
@@ -29,7 +29,7 @@ Build-Depends:
  x11proto-randr-dev (>= 1.4.0),
  x11proto-record-dev (>= 1.13.99.1),
  x11proto-render-dev (>= 2:0.11),
- x11proto-resource-dev,
+ x11proto-resource-dev (>= 1.2.0),
  x11proto-scrnsaver-dev,
  x11proto-video-dev,
  x11proto-xcmisc-dev (>= 1.2.0),
@@ -162,22 +162,21 @@ Architecture: any
 Depends:
  libpixman-1-dev (>= 0.27.2),
  x11proto-core-dev (>= 7.0.22),
- x11proto-input-dev (>= 2.2.99.1),
+ x11proto-input-dev (>= 2.3),
  x11proto-xext-dev (>= 7.1.99),
  x11proto-video-dev,
  x11proto-randr-dev (>= 1.4.0),
  x11proto-render-dev (>= 2:0.11),
  x11proto-dri2-dev (>= 2.8),
- x11proto-gl-dev,
+ x11proto-gl-dev (>= 1.4.16),
  x11proto-fonts-dev,
  x11proto-xinerama-dev,
  x11proto-kb-dev,
  x11proto-xf86dri-dev,
- x11proto-resource-dev,
+ x11proto-resource-dev (>= 1.2.0),
  x11proto-scrnsaver-dev,
  libxkbfile-dev,
  libpciaccess-dev,
- libpixman-1-dev (>= 0.21.8),
  mesa-common-dev,
  ${misc:Depends},
 Description: Xorg X server - development files

commit 28b1774c24d03c2a28ac9ae4870b39418bc14a36
Author: Julien Cristau <jcristau@debian.org>
Date:   Sat Jul 27 13:17:10 2013 +0200

    Drop old unrecognized configure options from d/rules.

diff --git a/debian/changelog b/debian/changelog
index 245abbd..eef11b2 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -25,6 +25,8 @@ xorg-server (2:1.14.2.901-1) UNRELEASED; urgency=low
 
   [ Julien Cristau ]
   * Merge sid branch up to 2:1.12.4-6.1.
+  * Drop old --disable-builddocs, --disable-xcalibrate configure options from
+    d/rules.
 
  -- Julien Cristau <jcristau@debian.org>  Fri, 26 Jul 2013 14:05:51 +0200
 
diff --git a/debian/rules b/debian/rules
index 5fc0a3c..993372e 100755
--- a/debian/rules
+++ b/debian/rules
@@ -112,12 +112,10 @@ confflags += \
 	     --with-builderstring="$(SOURCE_NAME) $(SOURCE_VERSION) ($(BUILDER))" \
 	     --with-xkb-path=/usr/share/X11/xkb \
 	     --with-xkb-output=/var/lib/xkb \
-	     --disable-builddocs \
 	     --disable-install-libxf86config \
 	     --enable-mitshm \
 	     --enable-xres \
 	     --disable-xcsecurity \
-	     --disable-xcalibrate \
 	     --disable-tslib \
 	     --enable-dbe \
 	     --disable-xf86bigfont \

commit 632ab7067a375c418f8f86928c974b877f234dd9
Author: Julien Cristau <jcristau@debian.org>
Date:   Fri Jul 26 14:06:36 2013 +0200

    Bump changelogs

diff --git a/ChangeLog b/ChangeLog
index 3ce76d4..800af89 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,624 @@
+commit bc41226f7741098e55a3b0df924986991576d50a
+Merge: 4ebd618 2cd62dc
+Author: Matt Dew <marcoz@osource.org>
+Date:   Thu Jul 25 22:56:24 2013 -0600
+
+    Merge branch 'server-1.14-touch-fixes' of git://people.freedesktop.org/~whot/xserver into server-1.14-branch
+
+commit 4ebd618bc5ef71507e708e7191091828eca3a7e8
+Author: Matt Dew <marcoz@osource.org>
+Date:   Thu Jul 25 22:24:00 2013 -0600
+
+    Bah, bad rev number. Fixed:  changed 1.14.3-rc1 to 1.14.2.901
+
+commit fef66ffe7a7e899a9126a1e431b94d881163b00d
+Author: Matt Dew <marcoz@osource.org>
+Date:   Thu Jul 25 22:02:26 2013 -0600
+
+    bump rev from 1.14.2 to 1.14.3-rc1
+
+commit 2cd62dc02b67c70d2417b2ccd307ead9596a2967
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Fri Mar 1 08:43:58 2013 +1000
+
+    Xi: return !Success from DeliverTouchEmulatedEvent if we didn't deliver
+    
+    All callers currently ignore the new value, so this patch has no effect.
+    Inverse call graph:
+    
+    DeliverTouchEmulatedEvent
+            DeliverEmulatedMotionEvent              Ignores value
+            DeliverTouchBeginEvent
+                    DeliverTouchEvent
+                            DeliverTouchEvents      Ignores value
+            DeliverTouchEndEvent
+                    DeliverTouchEvent
+                            DeliverTouchEvents      Ignores value
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Keith Packard <keithp@keithp.com>
+    (cherry picked from commit 9978b57b8d94f061d72a67b99a02b0ba16a11429)
+
+commit c203568905bcbb65fb1e079b626d2c1e90ecb72d
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Mon May 13 15:22:12 2013 +1000
+
+    Xi: fix warning - remove unused 'rc'
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    (cherry picked from commit fd5ea0237db6d725a48f76b706135df9d3246b82)
+
+commit 93f063c40dc4b339ae9114551071c57b52d98dba
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Fri Jul 12 14:10:10 2013 +1000
+
+    dix: UpdateTouchesForGrab must only free the listener grab if it is non-NULL
+    
+    If a client calls XIGrabDevice in response to a ButtonPress event (regular
+    event selection), the device will have a grab, but listener->grab is NULL.
+    
+    Check for that, to avoid logspam.
+    
+    [ 26293.863] (EE) BUG: triggered 'if (!pGrab)'
+    [ 26293.863] (EE) BUG: grabs.c:256 in FreeGrab()
+    [ 26293.863] (EE)
+    [ 26293.863] (EE) Backtrace:
+    [ 26293.864] (EE) 0: /usr/bin/Xorg (FreeGrab+0x54) [0x45d3fc]
+    [ 26293.864] (EE) 1: /usr/bin/Xorg (UpdateTouchesForGrab+0x135) [0x447d4e]
+    [ 26293.864] (EE) 2: /usr/bin/Xorg (ActivatePointerGrab+0x1ba) [0x447f3d]
+    [ 26293.864] (EE) 3: /usr/bin/Xorg (GrabDevice+0x3e6) [0x4503bc]
+    [ 26293.864] (EE) 4: /usr/bin/Xorg (ProcXIGrabDevice+0x1f9) [0x5981b1]
+    [ 26293.865] (EE) 5: /usr/bin/Xorg (ProcIDispatch+0x78) [0x58aa17]
+    [ 26293.865] (EE) 6: /usr/bin/Xorg (Dispatch+0x30d) [0x43347e]
+    [ 26293.865] (EE) 7: /usr/bin/Xorg (main+0x61d) [0x498175]
+    [ 26293.865] (EE) 8: /lib64/libc.so.6 (__libc_start_main+0xf5) [0x3df5621b75]
+    [ 26293.865] (EE) 9: /usr/bin/Xorg (_start+0x29) [0x423a19]
+    [ 26293.866] (EE) 10: ? (?+0x29) [0x29]
+    [ 26293.866] (EE)
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Keith Packard <keithp@keithp.com>
+    (cherry picked from commit 0e3be0b25fcfeff386bad132526352c2e45f1932)
+
+commit ecd178e632a99ae2f12d2d9b6e9a48eaa421335d
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Tue Jul 9 13:27:19 2013 +1000
+
+    dix: when ungrabbing an active grab, accept pointer grabs (#66720)
+    
+    Ungrabbing a device during an active touch grab rejects the grab. Ungrabbing
+    a device during an active pointer grab accepts the grab.
+    
+    Rejection is not really an option for a pointer-emulated grab, if a client
+    has a button mask on the window it would get a ButtonPress emulated after
+    UngrabDevice. That is against the core grab behaviour.
+    
+    X.Org Bug 66720 <http://bugs.freedesktop.org/show_bug.cgi?id=66720>
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Jasper St. Pierre <jstpierre@mecheye.net>
+    (cherry picked from commit 8eeaa74bc241acb41f1d3ed64971e0b01e794776)
+
+commit 54a7ae04a8475df6ce87e52ff995de22fafc7c92
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Mon May 27 13:46:49 2013 +1000
+
+    dix: remove logspam in RefCursor()
+    
+    This shouldn't have been in the patch
+    
+    Reported-by: Colin Harrison <colin.harrison@virgin.net>
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Keith Packard <keithp@keithp.com>
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+    (cherry picked from commit c21344add2fc589df83b29be5831c36a372201bd)
+
+commit 1e29b269fd712ae1e3552eeddd3529015baee7ae
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Wed May 15 19:01:11 2013 +1000
+
+    Abstract cursor refcounting
+    
+    Too many callers relied on the refcnt being handled correctly. Use a simple
+    wrapper to handle that case.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    (cherry picked from commit 9a5ad65330693b3273972b63d10f2907d9ab954a)
+
+commit c0be1168fd3dd2eb01187789ddc30d7aab909a98
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Tue May 14 14:51:31 2013 +1000
+
+    dix: call UpdateDeviceState() for emulated TouchEndEvents
+    
+    ProcessTouchEvents() calls UDS for all touch events, but if the event type
+    was switched to TouchUpdate(pending end) UDS is a noop.
+    
+    Daniel Drake found this can cause stuck buttons if a touch grab is
+    activated, rejected and the touch event is passed to a regular listener.
+    This sequence causes the TouchEnd to be changed to TouchUpdate(pending end).
+    
+    The actual TouchEnd event is later generated by the server once it is passed
+    to the next listener. UDS is never called for this event, thus the button
+    remains logically down.
+    
+    A previous patch suggested for UDS to handle TouchUpdate events [1], however
+    this would release the button when the first TouchEvent is processed, not
+    when the last grab has been released (as is the case for sync pointer
+    grabs). A client may thus have the grab on the device, receive a ButtonPress
+    but see the button logically up in an XQueryPointer request.
+    
+    This patch adds a call to UDS to TouchEmitTouchEnd(). The device state must
+    be updated once a TouchEnd event was sent to the last grabbing listener and
+    the number of grabs on the touchpoint is 0.
+    
+    [1] http://patchwork.freedesktop.org/patch/13464/
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    (cherry picked from commit 35c2e263db01b2b61354298e5e85aa3cae8ac317)
+
+commit 5c32bd0e2c104deaa2820c62289916fff6a4e3cd
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Fri May 3 15:07:58 2013 +1000
+
+    dix: fix cursor refcounting
+    
+    The cursor is referenced during CopyGrab(), thus doesn't need to be handled
+    manually anymore. It does need to be refcounted for temp grabs though.
+    
+    The oldGrab handling in ProcGrabPointer is a leftover from the cursor in the
+    grab being refcounted, but the grab itself being a static struct in the
+    DeviceIntRec. Now that all grabs are copied, this lead to a double-free of
+    the cursor (Reproduced in Thunderbird, dragging an email twice (or more
+    often) causes a crash).
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    (cherry picked from commit 481702101b86fff003430e952dc65fb41eb56400)
+
+commit 0ee9704f3c70fa7cf77edef55d158ad78df72a25
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Fri May 3 15:02:05 2013 +1000
+
+    dix: free the old grab when activating a new grab
+    
+    A client may call XIGrabDevice twice, overwriting the existing grab. Thus,
+    make sure we free the old copy after we copied it. Free it last, to make
+    sure our refcounts don't run to 0 and inadvertantly free something on the
+    way.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    (cherry picked from commit 3093f78d17e48a506aab170a9089cd10e21af299)
+
+commit ef0fff102d1feb5bccffc918da5c0dc7c0d28f3b
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Wed Apr 24 14:46:06 2013 +1000
+
+    Xi: check for HAS_ACCEPTED only for grab listeners
+    
+    If we have one listener left but it's not a grab, it cannot be in
+    LISTENER_HAS_ACCEPTED state.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    (cherry picked from commit 2566bdd8bc996cccde77b846819808c6239a89d2)
+
+commit f3d63710d57aea0184ae07f0422a76b0fd6d415f
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Wed Apr 24 14:40:31 2013 +1000
+
+    Move TouchListenerGone call to CloseDownClient
+    
+    TouchListenerGone cleans up if a client disappears. Having this in
+    FreeGrab() triggers cyclic removal of grabs, emitting wrong events. In
+    particular, it would clean up a passive grab record while that grab is
+    active.
+    
+    Move it to CloseDownClient() instead, cleaning up before we go.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    (cherry picked from commit 5b00fc52270e9cfdfe7ac1838a21defe50fc3d31)
+
+commit 6c880c143f6a32d3bbc529e4a0ab1663ddecf0a0
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Wed Apr 24 12:53:52 2013 +1000
+
+    dix: remove all listeners when freeing a touch
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    (cherry picked from commit 34c9b39d9937c2e19c2dffc9748605f90d40f965)
+
+commit ab76a3a3fc56cf8f530e5ab9b6389b09da1cdc12
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Wed Apr 17 20:15:35 2013 +1000
+
+    dix: always copy grabs, don't reference them
+    
+    Introduced in xorg-server-1.13.99.901-2-g9ad0fdb. Storing the grab pointer
+    in the listener turns out to be a bad idea. If the grab is not an active
+    grab or an implicit grab, the pointer stored is the one to the grab attached
+    on the window. This grab may be removed if the client calls UngrabButton or
+    similar while the touch is still active, leaving a dangling pointer.
+    
+    To avoid this, copy the grab wherever we need to reference it later. This
+    is also what we do for pointer/keyboard grabs, where we copy the grab as
+    soon as it becomes active.
+    
+    Reported-by: Maarten Lankhorst <maarten.lankhorst@canonical.com>
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    (cherry picked from commit 395124bd2782823de37e5c5b2f15dba49cff05f6)
+
+commit 6bd9badc780ec9d1fb147dfa0c671979c75b722c
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Tue Apr 23 15:52:18 2013 +1000
+
+    dix: AllocGrab can copy if an argument is passed in
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    (cherry picked from commit 925e35122ebad877395bcf13676e9dbeb254bdfa)
+
+commit 479f8bf236d17e2a2093d349d2ef6471ff089a53
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Tue Apr 23 15:46:04 2013 +1000
+
+    dix: freeing a null grab is a bug, complain if doing so
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    (cherry picked from commit 4980bcef9973ba1f90f53028f061669ee5d2661b)
+
+commit 27752301377698124634d48b62ba7fcf8310caab
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Tue Apr 23 15:39:32 2013 +1000
+
+    dix: use a temporary variable for listeners[0]
+    
+    no functional changes
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    (cherry picked from commit ccfa0f2d5de557546815a5e4f59552e2af46b578)
+
+commit d8c0cc9bab1fe159f58c2b5e8056c2d94a623789
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Thu Apr 18 10:32:11 2013 +1000
+
+    dix: drop DeviceIntRec's activeGrab struct
+    
+    Obsolete since 4bc2761ad5ec2d0668aec639780ffb136605fbc8. This struct
+    existed so copying a passive grab could be simply done by
+      activeGrab = *grab
+    
+    and thus have a copy of the GrabPtr we'd get from various sources but still
+    be able to check device->grab for NULL.
+    
+    Since 4bc2761 activeGrab is a pointer itself and points to the same memory
+    as grabinfo->grab, leaving us with the potential of dangling pointers if
+    either calls FreeGrab() and doesn't reset the other one.
+    
+    There is no reader of activeGrab anyway, so simply removing it is
+    sufficient.
+    
+    Note: field is merely renamed to keep the ABI. Should be removed in the
+    future.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    (cherry picked from commit 5363433a5cc64e2f83859aa1c32a89e5e1ddf9e4)
+
+commit 25b641bb324c33226313c15448592b785043eaba
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Wed Apr 17 20:14:56 2013 +1000
+
+    dix: use a tmp variable for the to-be-removed touch listener
+    
+    No functional changes.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    (cherry picked from commit 7dbf61817d3bd4b1fc71710677e56c5d8cfcdb4e)
+
+commit 88273287e1d7b3c06313f77d450f87a31bf53780
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Wed Apr 17 20:13:34 2013 +1000
+
+    dix: invert a loop condition
+    
+    Change the single if condition in the loop body to a
+        if (!foo) continue;
+    and re-indent the rest.
+    
+    No functional changes.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    (cherry picked from commit a71a283934406d870bcd8dc376eb1c9ce1c8bbb4)
+
+commit 4081b00d36d074eedf5c8d04196998d23cff28cf
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Thu Feb 28 11:02:40 2013 +1000
+
+    dix: XAllowEvents() on a touch event means accepting it
+    
+    A sync grab is the owner once it gets events. If it doesn't replay the
+    event it will get all events from this touch, equivalent to accepting it.
+    
+    If the touch has ended before XAllowEvents() is called, we also now need to
+    send the TouchEnd event and clean-up since we won't see anything more from
+    this touch.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    (cherry picked from commit 5174b1f98204beee79eba74c4cda5f2be0a60a8f)
+
+commit 8666395484d0ff68526b1afd0044329ca3e9c907
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Fri Mar 1 12:52:35 2013 +1000
+
+    dix: move EmitTouchEnd to touch.c
+    
+    No functional changes, this just enables it to be re-used easier.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    (cherry picked from commit e7f79c48b0faea910dc881034c00eb807fcd6210)
+
+commit 4dac09796ca7ec19c1a9b17f338babd51c999e2e
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Fri Mar 1 10:41:01 2013 +1000
+
+    Xi: Don't emit a TouchEnd event to a frozen device
+    
+    EmitTouchEnd calls DeliverTouchEvents directly instead of through
+    public.processInputProc. If a device is frozen, the TouchEnd is
+    processed while the device is waiting for a XAllowEvents and thus ends the
+    touch point (and the grab) before the client decided what to do with it. In
+    the case of ReplayPointer, this loses the event.
+    
+    This is a hack, but making EmitTouchEnd use processInputProc breaks
+    approximately everything, especially the touch point is cleaned up during
+    ProcessTouchEvents. Working around that is a bigger hack than this.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    (cherry picked from commit 0eb9390f6048049136347d5a5834d88bfc67cc09)
+
+commit c8a48358065ff94b8307d8aedfe58e54f34ba84f
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Thu Feb 28 13:07:26 2013 +1000
+
+    Xi: use public.processInputProc to replay the touch history
+    
+    If a device is frozen in results to a grab, we need to enqueue the events.
+    
+    This makes things complicated, and hard to follow since touch events are now
+    replayed in the history, pushed into EnqueueEvent, then replayed later
+    during PlayReleasedEvents in response to an XAllowEvents.
+    
+    While the device is frozen, no touch events are processed, so if there is a
+    touch client with ownership mask _below_ the grab this will delay the
+    delivery and potentially screw gesture recognition. However, this is the
+    behaviour we have already anyway if the top-most client is a sync pgrab or
+    there is a sync grab active on the device when the TouchBegin was generated.
+    
+    (also note, such a client would only reliably work in case of ReplayPointer
+    anyway)
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    (cherry picked from commit a7d989d335f903ffd8b168cd2beeb82c78d30c21)
+
+commit 2fcf86036f95128e9b90ddbd5ffc6edbacd3de9f
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Wed Feb 27 15:05:54 2013 +1000
+
+    Xi: when punting to a new owner, always create TouchEnd events
+    
+    If a touch is pending_finish and we just punted it to the next owner, that
+    client must receive a TouchEnd event.
+    
+    If we just punted to the last owner and that owner not a touch grab, we need
+    to end the touch since this is the last event to be sent, and the client
+    cannot accept/reject this.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    (cherry picked from commit 214d11d3fcdac51fc7afbf3770516ec14f9e13c1)
+
+commit e1c908f3931aa82c7c5f14aa162e02f3abf98faf
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Fri Mar 1 09:15:37 2013 +1000
+
+    Xi: save state for early acceptance
+    
+    Delivering an event changes the state to LISTENER_IS_OWNER and we thus lose
+    the information of early acceptance.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    (cherry picked from commit 026627fe19aad007544eccf209f0dea05e67a7a7)
+
+commit 7343d05e3a502216532aa9901c3a8948ea118c78
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Thu Feb 28 15:28:46 2013 +1000
+
+    Xi: if a passive async grab is activated from an emulated touch, accept
+    
+    Async grabs cannot replay events, they cannot reject, so we can do an early
+    accept here.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    (cherry picked from commit d905348134c80f19793eefb761731b00559ddf3a)
+
+commit 18346911ab0ce1ad66986b83f9afefadec25555e
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Thu Feb 28 13:04:36 2013 +1000
+
+    Xi: fix lookup in ActivateEarlyAccept
+    
+    ActivateEarlyAccept() can only be called from a grabbing client, so we can
+    ignore the rest. And it's easy enough to get the client from that since
+    9ad0fdb135a1c336771aee1f6eab75a6ad874aff.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    (cherry picked from commit 8b0d21044956f3810199d5e2f38ce33069e97be7)
+
+commit 000d469dd4d97424c72d82e4383ec295e31ffd34
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Thu Feb 28 13:08:27 2013 +1000
+
+    Xi: update the core listener state if we delivered the touch event
+    
+    If a TouchBegin is sent to a core client, that client is now the owner.
+    
+    By the time the TouchEnd is being processed, the client cannot replay
+    anymore, so we can assume that this is the final touch end and we can clean
+    up the touch record.
+    
+    Note: DeliverTouchEmulatedEvent is called for all listeners and immediately
+    bails out if the client is not the owner and thus shouldn't yet get the
+    event. Thus, check the return code.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    (cherry picked from commit d08bae297f9d7651edb1923d6b0d6b14b3d674fc)
+
+commit a7ec834d5e8c351cfa5d87b7902fa061826e3097
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Mon Feb 25 11:21:07 2013 +1000
+
+    Xi: if we delivered a TouchEnd to a passive grab, end it
+    
+    ef64b5ee97099618cf2e2cbbd3e471095695ae24 (which introduced the
+    TOUCH_CLIENT_ID check) has a wrong assumption that generated touch events
+    (TOUCH_CLIENT_ID) should not terminate passive grabs.
+    This is untrue, a TouchEnd may be generated in response to a TouchReject
+    higher up. If we _deliver_ an event to a client, terminate the passive grab.
+    
+    This requires us to count the actually delivered events too (first hunk).
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    (cherry picked from commit 81554d274f04951c55ea7f2e38d0455e2025e08d)
+
+commit 636647bc7f9ed10918cbb228f7d448c8cf733667
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Wed Feb 13 11:26:11 2013 +1000
+
+    dix: don't prepend an activated passive grab to the listeners
+    
+    If the device is currently grabbed as the result of a passive grab
+    activating, do not prepend that grab to the listeners (unlike active grabs).
+    Otherwise, a client with a passive pointer grab will prevent touch grabs
+    from activating higher up in the window stack.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    (cherry picked from commit 363b6387da6e669099a2da3861c73a29808295a6)
+
+commit 87e027726f2d9223ce2fef2e4d26c18ae680a05e
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Wed Feb 13 10:49:23 2013 +1000
+
+    Xi: not having an ownership mask does not mean automatic acceptance
+    
+    If we only have a single touch-grabbing client, setting the client as owner
+    would clean up the touch once the TouchEnd was processed. If the client then
+    calls XIAllowTouches() it will receive a BadValue for the touch ID (since
+    the internal record is already cleaned up).
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    (cherry picked from commit 9cc45c18ad1511adf3fb163dd4cefbef106edb23)
+
+commit 34f5ca3a70e966d6fe232179a47c3dc660773ad5
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Fri Mar 1 08:26:06 2013 +1000
+
+    Xi: use a temp variable for the new listener
+    
+    Instead of accessing ti->listener[0] all the time.
+    
+    No functional changes.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Keith Packard <keithp@keithp.com>
+    (cherry picked from commit fc504a44d12d537d4e07f659f1863f200a0272ad)
+
+commit 54b125d1751385bcfc3c1b51d21ee6a7dc14143b
+Author: Aaron Plattner <aplattner@nvidia.com>
+Date:   Tue Apr 30 14:30:18 2013 -0700
+
+    xfree86: don't enable anything in xf86InitialConfiguration for GPU screens
+    
+    There's no point in turning on outputs connected to GPU screens during initial
+    configuration.  Not only does this cause them to just display black, it also
+    confuses clients when these screens are attached to a master screen and RandR
+    reports that the outputs are already on.
+    
+    Also, don't print the warning about no outputs being found on GPU screens,
+    since that's expected.
+    
+    Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
+    Reviewed-by: Dave Airlie <airlied@gmail.com>
+    (cherry picked from commit dbfeaf70623a83e1a3f3255c94d52e0e04702837)
+
+commit 29545a422bbdd11fda5cb61f27720332d68d0c36
+Author: Dave Airlie <airlied@redhat.com>
+Date:   Wed Jan 9 12:52:13 2013 +1000
+
+    gpu: call CreateScreenResources for GPU screens
+    
+    I didn't think we needed this before, but after doing some more
+    work with reverse optimus it seems like it should be called.
+    
+    Reviewed-by: Keith Packard <keithp@keithp.com>
+    Signed-off-by: Dave Airlie <airlied@redhat.com>
+    (cherry picked from commit f2fd8ec3725a61abbc831f0a9ec28fa2b7020c47)
+
+commit f21cc327a56e3b453cf0dba04457223d61c27ea6
+Author: Dave Airlie <airlied@redhat.com>
+Date:   Wed Jan 9 12:52:08 2013 +1000
+
+    dix: allow pixmap dirty helper to be used for non-shared pixmaps
+    
+    this allows the pixmap dirty helper to be used for reverse optimus,
+    where the GPU wants to copy from the shared pixmap to its VRAM copy.
+    
+    [airlied: slave_dst is wrong name now but pointless ABI churn at this point]
+    Reviewed-by: Keith Packard <keithp@keithp.com>
+    Signed-off-by: Dave Airlie <airlied@redhat.com>
+    (cherry picked from commit 8fcb9d91b69abc72ddef31b9f2e8585580c6cad2)
+
+commit d817284b01ad3bbe02c71d6b00af7526be77626b
+Author: Dave Airlie <airlied@redhat.com>
+Date:   Wed Jan 9 12:52:03 2013 +1000
+
+    xf86crtc: don't use scrn->display for gpu screens
+    
+    scrn->display is a property of the main screen really, and we don't
+    want to have the GPU screens use it for anything when picking modes
+    or a front buffer size.
+    
+    This fixes a bug where when you plugged a display link device, it
+    would try and allocate a screen the same size as the current running
+    one (3360x1050 in this case), which was too big for the device. Avoid
+    doing this and just pick sizes based on whats plugged into this device.
+    
+    Reviewed-by: Keith Packard <keithp@keithp.com>
+    Signed-off-by: Dave Airlie <airlied@redhat.com>
+    (cherry picked from commit 16077b81c502e04d77f81f683e0c213b9fe75393)
+
+commit 803d0ac49900903915f1dcd2496f085e5c1afa22
+Author: Dave Airlie <airlied@redhat.com>
+Date:   Wed Jan 9 12:51:55 2013 +1000
+
+    dix/gpu: remove asserts for output/offload from same slave
+    
+    We should have no problem allowing output/offload from the same slave,
+    I asserted here, but in order to implement reverse optimus this makes
+    perfect sense. (reverse optimus is intel outputting to nvidia).
+    
+    Reviewed-by: Keith Packard <keithp@keithp.com>
+    Signed-off-by: Dave Airlie <airlied@redhat.com>
+    (cherry picked from commit f0d0d75bfe62553dde353f89e46ff13dd863fbe8)
+
+commit 3608d9f3dd6ae1d23e23294e9a56cb8158e65d19
+Author: Piotr Dziwinski <piotrdz@gmail.com>
+Date:   Sat Feb 23 13:14:45 2013 +0100
+
+    glx: fix uninitialized var in __glXDRIscreenProbe
+    
+    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=59825
+    
+    Signed-off-by: Piotr Dziwinski <piotrdz@gmail.com>
+    Reviewed-by: Keith Packard <keithp@keithp.com>
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+    (cherry picked from commit cc3d1a5a6120e721a46c67446ba68f5596055633)
+
 commit 2767d9a17d62aede7cabac589c3388078bdb6022
 Author: Matt Dew <marcoz@osource.org>
 Date:   Tue Jun 25 09:49:08 2013 -0600
diff --git a/debian/changelog b/debian/changelog
index f518cf7..566632d 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,7 +1,8 @@
-xorg-server (2:1.14.2-1) UNRELEASED; urgency=low
+xorg-server (2:1.14.2.901-1) UNRELEASED; urgency=low
 
-  [ Maarten Lankhorst ]
   * New upstream release
+
+  [ Maarten Lankhorst ]
   * Bump minimum required abi, randr, dri2 and gl protos.
   * Remove upstreamed patches.
     - 02_Add-libnettle-as-option-for-sha1.diff
@@ -22,7 +23,7 @@ xorg-server (2:1.14.2-1) UNRELEASED; urgency=low
   * Bump input ABI version in serverminver
   * Bump libxi-dev build requirement to 2:1.6.99.1
 
- -- Robert Hooker <sarvatt@ubuntu.com>  Wed, 22 Aug 2012 11:12:17 -0400
+ -- Julien Cristau <jcristau@debian.org>  Fri, 26 Jul 2013 14:05:51 +0200
 
 xorg-server (2:1.12.4-4) UNRELEASED; urgency=low
 

commit 4ebd618bc5ef71507e708e7191091828eca3a7e8
Author: Matt Dew <marcoz@osource.org>
Date:   Thu Jul 25 22:24:00 2013 -0600

    Bah, bad rev number. Fixed:  changed 1.14.3-rc1 to 1.14.2.901

diff --git a/configure.ac b/configure.ac
index 8738813..271e49d 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,7 +26,7 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.60)
-AC_INIT([xorg-server], 1.14.3-rc1, [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+AC_INIT([xorg-server], 1.14.2.901, [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
 RELEASE_DATE="2013-07-25"
 RELEASE_NAME="Act semi-normal-rc1"
 AC_CONFIG_SRCDIR([Makefile.am])

commit fef66ffe7a7e899a9126a1e431b94d881163b00d
Author: Matt Dew <marcoz@osource.org>
Date:   Thu Jul 25 22:02:26 2013 -0600

    bump rev from 1.14.2 to 1.14.3-rc1

diff --git a/configure.ac b/configure.ac
index 99e3cd6..8738813 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,9 +26,9 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.60)
-AC_INIT([xorg-server], 1.14.2, [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE="2013-06-25"
-RELEASE_NAME="Act Abnormal"
+AC_INIT([xorg-server], 1.14.3-rc1, [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE="2013-07-25"
+RELEASE_NAME="Act semi-normal-rc1"
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])
 

commit 8c623bd496fa4b697252229614bc03cfde0d8515
Author: Michael Biebl <biebl@debian.org>
Date:   Thu Jul 25 19:45:59 2013 +0200

    Update changelong and upload to unstable
    
    Signed-off-by: Julien Cristau <jcristau@debian.org>

diff --git a/debian/changelog b/debian/changelog
index a2ef947..faf29dc 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,12 @@
+xorg-server (2:1.12.4-6.1) unstable; urgency=low
+
+  * Non-maintainer upload.
+  * 10_Include-missing-selection-h.diff: Fix FTBFS with GCC 4.8. Include
+    selection.h in dix/window.c for the missing DeleteWindowFromAnySelections
+    function prototype. Patch by Gerardo Malazdrewicz (closes: #701372)
+
+ -- Michael Biebl <biebl@debian.org>  Thu, 25 Jul 2013 19:45:29 +0200
+
 xorg-server (2:1.12.4-6) unstable; urgency=low
 
   * Touch: Fix duplicate TouchBegin selection with virtual devices

commit ca4169aa5e47411a275fedbd78963408beb31d6a
Author: Michael Biebl <biebl@debian.org>
Date:   Thu Jul 25 19:44:21 2013 +0200

    Fix build failure with GCC 4.8
    
    This patches fixes the following build failure:
    
    ../../dix/window.c:887:5: error: implicit declaration of function 'DeleteWindowFromAnySelections' [-Werror=implicit-function-declaration]
    
    by including "selection.h", where the function is prototyped.
    
    Signed-off-by: Julien Cristau <jcristau@debian.org>

diff --git a/debian/patches/10_Include-missing-selection-h.diff b/debian/patches/10_Include-missing-selection-h.diff
new file mode 100644
index 0000000..873b14e
--- /dev/null
+++ b/debian/patches/10_Include-missing-selection-h.diff
@@ -0,0 +1,20 @@
+Description: Fix build failure with GCC 4.8
+   This patches fixes the following build failure:
+   
+   ../../dix/window.c:887:5: error: implicit declaration of function 'DeleteWindowFromAnySelections' [-Werror=implicit-function-declaration]
+   
+   by including "selection.h", where the function is prototyped.
+
+Author: Gerardo Malazdrewicz <gerardo@malazdrewicz.com.ar>
+Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=701372
+--- xorg-server-1.12.4/dix/window.c	2012-05-17 14:09:02.000000000 -0300
++++ xorg-server-1.12.4.good/dix/window.c	2013-04-18 11:53:06.787521781 -0300
+@@ -131,6 +131,8 @@
+ #include "xace.h"
+ #include "exevents.h"
+ 
++#include "selection.h"
++
+ #include <X11/Xatom.h>          /* must come after server includes */
+ 
+ /******
diff --git a/debian/patches/series b/debian/patches/series
index c89edaf..e05122f 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -10,3 +10,4 @@
 07_Revert-kinput-allocate-enough-space-for-null-charact.diff
 08_xfree86_fix_ia64_inx_outx.diff
 09_EXA-Track-source-mask-pixmaps-more-explicitly-for-Co.diff
+10_Include-missing-selection-h.diff

commit 2cd62dc02b67c70d2417b2ccd307ead9596a2967
Author: Peter Hutterer <peter.hutterer@who-t.net>
Date:   Fri Mar 1 08:43:58 2013 +1000

    Xi: return !Success from DeliverTouchEmulatedEvent if we didn't deliver
    
    All callers currently ignore the new value, so this patch has no effect.
    Inverse call graph:
    
    DeliverTouchEmulatedEvent
            DeliverEmulatedMotionEvent              Ignores value
            DeliverTouchBeginEvent
                    DeliverTouchEvent
                            DeliverTouchEvents      Ignores value
            DeliverTouchEndEvent
                    DeliverTouchEvent
                            DeliverTouchEvents      Ignores value
    
    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    Reviewed-by: Keith Packard <keithp@keithp.com>
    (cherry picked from commit 9978b57b8d94f061d72a67b99a02b0ba16a11429)

diff --git a/Xi/exevents.c b/Xi/exevents.c
index 91281ae..067e6b3 100644
--- a/Xi/exevents.c
+++ b/Xi/exevents.c
@@ -1373,7 +1373,7 @@ DeliverTouchEmulatedEvent(DeviceIntPtr dev, TouchPointInfoPtr ti,
 
     /* We don't deliver pointer events to non-owners */
     if (!TouchResourceIsOwner(ti, listener->listener))
-        return Success;
+        return !Success;
 
     nevents = TouchConvertToPointerEvent(ev, &motion, &button);
     BUG_RETURN_VAL(nevents == 0, BadValue);
@@ -1395,7 +1395,7 @@ DeliverTouchEmulatedEvent(DeviceIntPtr dev, TouchPointInfoPtr ti,
             /* 'grab' is the passive grab, but if the grab isn't active,
              * don't deliver */
             if (!dev->deviceGrab.grab)
-                return Success;
+                return !Success;
 
             if (grab->ownerEvents) {
                 WindowPtr focus = NullWindow;

commit c203568905bcbb65fb1e079b626d2c1e90ecb72d
Author: Peter Hutterer <peter.hutterer@who-t.net>
Date:   Mon May 13 15:22:12 2013 +1000

    Xi: fix warning - remove unused 'rc'
    
    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    (cherry picked from commit fd5ea0237db6d725a48f76b706135df9d3246b82)

diff --git a/Xi/exevents.c b/Xi/exevents.c
index 30e48f0..91281ae 100644
--- a/Xi/exevents.c
+++ b/Xi/exevents.c
@@ -1036,7 +1036,6 @@ DeliverOneTouchEvent(ClientPtr client, DeviceIntPtr dev, TouchPointInfoPtr ti,
 static void
 ActivateEarlyAccept(DeviceIntPtr dev, TouchPointInfoPtr ti)
 {


Reply to: