xorg-server: Changes to 'upstream-unstable'

2017-10-12 Thread Andreas Boll
 Xext/panoramiX.c |3 
 Xext/saver.c |2 
 Xext/vidmode.c   |  129 ---
 Xext/xres.c  |4 
 Xext/xvdisp.c|4 
 Xi/xibarriers.c  |5 
 Xi/xichangehierarchy.c   |2 
 configure.ac |6 -
 dbe/dbe.c|5 
 dix/dispatch.c   |7 +
 hw/dmx/dmxpict.c |2 
 hw/xfree86/common/xf86DGA.c  |   81 --
 hw/xfree86/dri/xf86dri.c |1 
 hw/xfree86/drivers/modesetting/dri2.c|   74 +
 hw/xfree86/drivers/modesetting/driver.h  |   17 ---
 hw/xfree86/drivers/modesetting/drmmode_display.c |9 +
 hw/xfree86/drivers/modesetting/present.c |   25 +++-
 hw/xfree86/drivers/modesetting/vblank.c  |   67 ++-
 os/io.c  |5 
 pseudoramiX/pseudoramiX.c|3 
 render/render.c  |3 
 xfixes/cursor.c  |5 
 xfixes/region.c  |3 
 xfixes/saveset.c |1 
 xfixes/xfixes.c  |1 
 25 files changed, 263 insertions(+), 201 deletions(-)

New commits:
commit b96e982e3a43513549636850186ff80a82190f64
Author: Adam Jackson 
Date:   Thu Oct 12 12:32:31 2017 -0400

xserver 1.19.5

Signed-off-by: Adam Jackson 

diff --git a/configure.ac b/configure.ac
index 682c655..d65c08e 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.19.4, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE="2017-10-04"
-RELEASE_NAME="French Onion Soup"
+AC_INIT([xorg-server], 1.19.5, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE="2017-10-12"
+RELEASE_NAME="Shahi Paneer"
 AC_CONFIG_SRCDIR([Makefile.am])
 AC_CONFIG_MACRO_DIR([m4])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])

commit 95f605b42d8bbb6bea2834a1abfc205981c5b803
Author: Nathan Kidd 
Date:   Fri Jan 9 10:15:46 2015 -0500

Unvalidated extra length in ProcEstablishConnection (CVE-2017-12176)

Reviewed-by: Julien Cristau 
Signed-off-by: Nathan Kidd 
Signed-off-by: Julien Cristau 
(cherry picked from commit b747da5e25be944337a9cd1415506fc06b70aa81)

diff --git a/dix/dispatch.c b/dix/dispatch.c
index 0da431b..0fdfe11 100644
--- a/dix/dispatch.c
+++ b/dix/dispatch.c
@@ -3703,7 +3703,12 @@ ProcEstablishConnection(ClientPtr client)
 prefix = (xConnClientPrefix *) ((char *) stuff + sz_xReq);
 auth_proto = (char *) prefix + sz_xConnClientPrefix;
 auth_string = auth_proto + pad_to_int32(prefix->nbytesAuthProto);
-if ((prefix->majorVersion != X_PROTOCOL) ||
+
+if ((client->req_len << 2) != sz_xReq + sz_xConnClientPrefix +
+   pad_to_int32(prefix->nbytesAuthProto) +
+   pad_to_int32(prefix->nbytesAuthString))
+reason = "Bad length";
+else if ((prefix->majorVersion != X_PROTOCOL) ||
 (prefix->minorVersion != X_PROTOCOL_REVISION))
 reason = "Protocol version mismatch";
 else

commit cc41e5b581d287c56f8d7113a97a4882dcfdd696
Author: Nathan Kidd 
Date:   Fri Jan 9 10:09:14 2015 -0500

dbe: Unvalidated variable-length request in ProcDbeGetVisualInfo 
(CVE-2017-12177)

v2: Protect against integer overflow (Alan Coopersmith)

Reviewed-by: Alan Coopersmith 
Reviewed-by: Jeremy Huddleston Sequoia 
Reviewed-by: Julien Cristau 
Signed-off-by: Nathan Kidd 
Signed-off-by: Julien Cristau 
(cherry picked from commit 4ca68b878e851e2136c234f40a25008297d8d831)

diff --git a/dbe/dbe.c b/dbe/dbe.c
index 23f7e16..f31766f 100644
--- a/dbe/dbe.c
+++ b/dbe/dbe.c
@@ -574,6 +574,9 @@ ProcDbeGetVisualInfo(ClientPtr client)
 XdbeScreenVisualInfo *pScrVisInfo;
 
 REQUEST_AT_LEAST_SIZE(xDbeGetVisualInfoReq);
+if (stuff->n > UINT32_MAX / sizeof(CARD32))
+return BadLength;
+REQUEST_FIXED_SIZE(xDbeGetVisualInfoReq, stuff->n * sizeof(CARD32));
 
 if (stuff->n > UINT32_MAX / sizeof(DrawablePtr))
 return BadAlloc;
@@ -924,7 +927,7 @@ SProcDbeSwapBuffers(ClientPtr client)
 
 swapl(>n);
 if (stuff->n > UINT32_MAX / sizeof(DbeSwapInfoRec))
-return BadAlloc;
+return BadLength;
 

xorg-server: Changes to 'upstream-unstable'

2017-10-05 Thread Timo Aaltonen
 Xext/panoramiXprocs.c|   70 +--
 Xext/shm.c   |1 
 Xi/sendexev.c|   24 ++-
 Xi/xibarriers.c  |9 -
 Xi/xiwarppointer.c   |4 
 configure.ac |9 -
 dix/dispatch.c   |4 
 dix/events.c |6 
 dix/swapreq.c|7 +
 glamor/glamor.c  |3 
 glamor/glamor_copy.c |   21 +--
 glamor/glamor_dash.c |2 
 glamor/glamor_fbo.c  |4 
 glamor/glamor_glyphblt.c |   26 ++--
 glamor/glamor_largepixmap.c  |   11 -
 glamor/glamor_lines.c|   13 +-
 glamor/glamor_points.c   |   14 +-
 glamor/glamor_rects.c|   13 +-
 glamor/glamor_render.c   |5 
 glamor/glamor_segs.c |   14 +-
 glamor/glamor_spans.c|   13 +-
 glamor/glamor_transform.c|   11 +
 glamor/glamor_transform.h|2 
 glamor/glamor_utils.h|4 
 glamor/glamor_xv.c   |9 -
 hw/dmx/dmxinit.c |   63 --
 hw/dmx/dmxsync.c |2 
 hw/dmx/input/usb-keyboard.c  |3 
 hw/kdrive/ephyr/ephyr.c  |6 
 hw/kdrive/ephyr/ephyrvideo.c |5 
 hw/kdrive/ephyr/hostx.c  |6 
 hw/xfree86/Makefile.am   |   10 -
 hw/xfree86/common/xf86Init.c |1 
 hw/xfree86/common/xf86Xinput.c   |3 
 hw/xfree86/common/xf86pciBus.c   |2 
 hw/xfree86/dixmods/Makefile.am   |4 
 hw/xfree86/dixmods/xkbKillSrv.c  |   54 
 hw/xfree86/dixmods/xkbPrivate.c  |   53 
 hw/xfree86/dixmods/xkbVT.c   |   64 --
 hw/xfree86/dri2/pci_ids/i965_pci_ids.h   |   63 +++---
 hw/xfree86/drivers/modesetting/dri2.c|   74 +++-
 hw/xfree86/drivers/modesetting/driver.c  |5 
 hw/xfree86/drivers/modesetting/driver.h  |   17 ++
 hw/xfree86/drivers/modesetting/drmmode_display.c |   66 +-
 hw/xfree86/drivers/modesetting/present.c |   25 
 hw/xfree86/drivers/modesetting/vblank.c  |   69 +--
 hw/xfree86/modes/xf86RandR12.c   |  139 +++
 hw/xfree86/os-support/linux/lnx_init.c   |3 
 hw/xfree86/os-support/shared/posix_tty.c |3 
 hw/xfree86/parser/scan.c |2 
 hw/xfree86/xkb/Makefile.am   |6 
 hw/xfree86/xkb/meson.build   |   12 +
 hw/xfree86/xkb/xkbKillSrv.c  |   54 
 hw/xfree86/xkb/xkbPrivate.c  |   53 
 hw/xfree86/xkb/xkbVT.c   |   64 ++
 hw/xfree86/xorg-wrapper.c|3 
 hw/xquartz/quartz.c  |1 
 hw/xwayland/drm.xml  |   35 +++--
 hw/xwayland/xwayland-input.c |   32 +
 hw/xwayland/xwayland-output.c|3 
 hw/xwayland/xwayland.c   |   38 +-
 include/xorg-config.h.in |3 
 os/io.c  |   38 --
 os/osinit.c  |1 
 os/utils.c   |8 +
 present/present.c|4 
 randr/rrcrtc.c   |5 
 record/record.c  |3 
 test/Makefile.am |2 
 test/signal-logging.c|2 
 xkb/xkbtext.c|   42 +++---
 71 files changed, 884 insertions(+), 566 deletions(-)

New commits:
commit ec37e559614cf4eaba67d3ca0693f09fd95a5d57
Author: Adam Jackson 
Date:   Wed Oct 4 15:29:18 2017 -0400

xserver 1.19.4

Signed-off-by: Adam Jackson 

diff --git a/configure.ac b/configure.ac
index e078f12..682c655 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.19.3, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE="2017-03-15"
-RELEASE_NAME="Lobster Bisque"
+AC_INIT([xorg-server], 1.19.4, 

xorg-server: Changes to 'upstream-unstable'

2017-03-15 Thread Emilio Pozuelo Monfort
 configure.ac  |8 ++---
 dix/pixmap.c  |   16 ++-
 glamor/glamor_dash.c  |1 
 hw/xwayland/xwayland-cursor.c |   14 -
 hw/xwayland/xwayland-glamor.c |   60 --
 os/busfault.c |   13 -
 present/present.c |   16 +++
 render/render.c   |4 ++
 8 files changed, 100 insertions(+), 32 deletions(-)

New commits:
commit d88937ba8354d6a4e0be2a398037443146701ddc
Author: Adam Jackson 
Date:   Wed Mar 15 13:44:05 2017 -0400

xserver 1.19.3

Signed-off-by: Adam Jackson 

diff --git a/configure.ac b/configure.ac
index e9fa1c7..e6c5b35 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.19.2, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE="2017-03-02"
-RELEASE_NAME="Clam Chowder"
+AC_INIT([xorg-server], 1.19.3, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE="2017-03-15"
+RELEASE_NAME="Lobster Bisque"
 AC_CONFIG_SRCDIR([Makefile.am])
 AC_CONFIG_MACRO_DIR([m4])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])

commit b258ed457d8f22cfba8a45b35a9be9b53fd37e1e
Author: Chris Wilson 
Date:   Fri Feb 17 08:18:52 2017 +

os: Fix iteration over busfaults

Fixes a regression from

commit 41da295eb50fa08eaacd0ecde99f43a716fcb41a
Author: Keith Packard 
Date:   Sun Nov 3 13:12:40 2013 -0800

Trap SIGBUS to handle truncated shared memory segments

that causes the SIGBUS handler to fail to chain up correctly and
corrupts nearby memory instead.

Signed-off-by: Chris Wilson 
Reviewed-by: Peter Hutterer 
Signed-off-by: Peter Hutterer 
(cherry picked from commit acdb5bf2de57c0080d2a6e730c788a0a428e13dc)

diff --git a/os/busfault.c b/os/busfault.c
index d4afa6d..a2d433a 100644
--- a/os/busfault.c
+++ b/os/busfault.c
@@ -98,15 +98,16 @@ static void
 busfault_sigaction(int sig, siginfo_t *info, void *param)
 {
 void*fault = info->si_addr;
-struct busfault *busfault = NULL;
+struct busfault *iter, *busfault = NULL;
 void*new_addr;
 
 /* Locate the faulting address in our list of shared segments
  */
-xorg_list_for_each_entry(busfault, , list) {
-if ((char *) busfault->addr <= (char *) fault && (char *) fault < 
(char *) busfault->addr + busfault->size) {
-break;
-}
+xorg_list_for_each_entry(iter, , list) {
+   if ((char *) iter->addr <= (char *) fault && (char *) fault < (char *) 
iter->addr + iter->size) {
+   busfault = iter;
+   break;
+   }
 }
 if (!busfault)
 goto panic;
@@ -132,7 +133,7 @@ panic:
 if (previous_busfault_sigaction)
 (*previous_busfault_sigaction)(sig, info, param);
 else
-FatalError("bus error");
+FatalError("bus error\n");
 }
 
 Bool

commit 7c4fab2f1f411b6f7d7adc76271fca7c29365ac4
Author: Tobias Stoeckmann 
Date:   Mon Mar 13 19:13:14 2017 +0100

render: Fix out of boundary heap access

ProcRenderCreateRadialGradient and ProcRenderCreateConicalGradient must
be protected against an integer overflow during length check. This is
already included in ProcRenderCreateLinearGradient since the fix for
CVE-2008-2362.

This can only be successfully exploited on a 32 bit system for an
out of boundary read later on. Validated by using ASAN.

Reviewed-by: Adam Jackson 
(cherry picked from commit ac15d4cecca377c5c31ab852c39bbd554ca48fe2)

diff --git a/render/render.c b/render/render.c
index b9a932e..bfacaa0 100644
--- a/render/render.c
+++ b/render/render.c
@@ -1908,6 +1908,8 @@ ProcRenderCreateRadialGradient(ClientPtr client)
 LEGAL_NEW_RESOURCE(stuff->pid, client);
 
 len = (client->req_len << 2) - sizeof(xRenderCreateRadialGradientReq);
+if (stuff->nStops > UINT32_MAX / (sizeof(xFixed) + sizeof(xRenderColor)))
+return BadLength;
 if (len != stuff->nStops * (sizeof(xFixed) + sizeof(xRenderColor)))
 return BadLength;
 
@@ -1946,6 +1948,8 @@ ProcRenderCreateConicalGradient(ClientPtr client)
 LEGAL_NEW_RESOURCE(stuff->pid, client);
 
 len = (client->req_len << 2) - sizeof(xRenderCreateConicalGradientReq);
+if (stuff->nStops > UINT32_MAX / (sizeof(xFixed) + sizeof(xRenderColor)))
+return BadLength;
 if (len != stuff->nStops * (sizeof(xFixed) + sizeof(xRenderColor)))
 return BadLength;
 

commit fbb46e0be897ffe78b731a2456673b4cbb73b2be
Author: Dr.-Ing. Dieter Jurzitza 
Date:   Thu Feb 23 12:57:26 2017 -0500


xorg-server: Changes to 'upstream-unstable'

2017-03-03 Thread Emilio Pozuelo Monfort
 configure.ac   |   14 ++
 dix/pixmap.c   |   31 +--
 glamor/glamor_render.c |4 ++
 hw/xfree86/ramdac/xf86HWCurs.c |   55 +++--
 hw/xwayland/xwayland-cvt.c |7 +
 hw/xwayland/xwayland-input.c   |   11 
 hw/xwayland/xwayland-output.c  |   37 +--
 include/dix-config.h.in|9 ++
 include/input.h|1 
 include/os.h   |5 +++
 miext/damage/damage.c  |   10 +++
 os/auth.c  |   14 +++---
 os/inputthread.c   |8 +
 os/io.c|3 ++
 os/mitauth.c   |   15 ---
 os/osdep.h |6 
 os/rpcauth.c   |6 
 os/timingsafe_memcmp.c |   48 +++
 os/xdmauth.c   |   27 
 present/present.c  |4 --
 20 files changed, 211 insertions(+), 104 deletions(-)

New commits:
commit f23e65f96365706c69fa781b2c6cbf3203619c9f
Author: Adam Jackson 
Date:   Thu Mar 2 17:53:04 2017 -0500

xserver 1.19.2, no, really

Signed-off-by: Adam Jackson 

diff --git a/configure.ac b/configure.ac
index 7ca32f0..a265ab5 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.19.1, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+AC_INIT([xorg-server], 1.19.2, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
 RELEASE_DATE="2017-03-02"
 RELEASE_NAME="Clam Chowder"
 AC_CONFIG_SRCDIR([Makefile.am])

commit 96d4df934bb4397a251d7d1f2dc0e1296c2e9bb3
Author: Adam Jackson 
Date:   Thu Mar 2 15:07:00 2017 -0500

xserver 1.19.2

Signed-off-by: Adam Jackson 

diff --git a/configure.ac b/configure.ac
index 292694b..7ca32f0 100644
--- a/configure.ac
+++ b/configure.ac
@@ -27,8 +27,8 @@ dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.60)
 AC_INIT([xorg-server], 1.19.1, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE="2017-01-11"
-RELEASE_NAME="Maeuntang"
+RELEASE_DATE="2017-03-02"
+RELEASE_NAME="Clam Chowder"
 AC_CONFIG_SRCDIR([Makefile.am])
 AC_CONFIG_MACRO_DIR([m4])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])

commit f4ff7b6b559c3ebf7ec1156d170b3daa0618eec2
Author: Adam Jackson 
Date:   Thu Mar 2 17:20:30 2017 -0500

os: Squash missing declaration warning for timingsafe_memcmp

timingsafe_memcmp.c:21:1: warning: no previous prototype for 
‘timingsafe_memcmp’ [-Wmissing-prototypes]
 timingsafe_memcmp(const void *b1, const void *b2, size_t len)

Signed-off-by: Adam Jackson 
(cherry picked from commit 5c44169caed811e59a65ba346de1cadb46d266ec)

diff --git a/os/timingsafe_memcmp.c b/os/timingsafe_memcmp.c
index 36ab362..65679c8 100644
--- a/os/timingsafe_memcmp.c
+++ b/os/timingsafe_memcmp.c
@@ -16,6 +16,9 @@
 
 #include 
 #include 
+#include 
+#include 
+#include "os.h"
 
 int
 timingsafe_memcmp(const void *b1, const void *b2, size_t len)

commit 1aa40b96e2f099eabfeef66e77fff36dbd377aa0
Author: Adam Jackson 
Date:   Thu Mar 2 15:43:15 2017 -0500

Revert "xserver 1.19.2"

Apparently I need to fight make distcheck some more, so let's not
pretend this is released yet.

This reverts commit 0b4112bc753a5bd5306f0c67e13e26e3f1c72211.

diff --git a/configure.ac b/configure.ac
index 7ca32f0..292694b 100644
--- a/configure.ac
+++ b/configure.ac
@@ -27,8 +27,8 @@ dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.60)
 AC_INIT([xorg-server], 1.19.1, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE="2017-03-02"
-RELEASE_NAME="Clam Chowder"
+RELEASE_DATE="2017-01-11"
+RELEASE_NAME="Maeuntang"
 AC_CONFIG_SRCDIR([Makefile.am])
 AC_CONFIG_MACRO_DIR([m4])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])

commit 0b4112bc753a5bd5306f0c67e13e26e3f1c72211
Author: Adam Jackson 
Date:   Thu Mar 2 15:07:00 2017 -0500

xserver 1.19.2

Signed-off-by: Adam Jackson 

diff --git a/configure.ac b/configure.ac
index 292694b..7ca32f0 100644
--- a/configure.ac
+++ b/configure.ac
@@ -27,8 +27,8 @@ dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.60)
 AC_INIT([xorg-server], 1.19.1, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE="2017-01-11"
-RELEASE_NAME="Maeuntang"
+RELEASE_DATE="2017-03-02"
+RELEASE_NAME="Clam Chowder"
 AC_CONFIG_SRCDIR([Makefile.am])
 AC_CONFIG_MACRO_DIR([m4])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])

commit e4dd73b242522942d9a5f1c9cada92321710a682
Author: Olivier Fourdan 

xorg-server: Changes to 'upstream-unstable'

2017-01-12 Thread Andreas Boll
Rebased ref, commits from common ancestor:
commit ad2facda30f453d749492c51d29f2626aee6326a
Author: Adam Jackson 
Date:   Wed Jan 11 16:15:57 2017 -0500

xserver 1.19.1

Signed-off-by: Adam Jackson 

diff --git a/configure.ac b/configure.ac
index f7ab48c..b0daff9 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.19.0, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE="2016-11-15"
-RELEASE_NAME="Cioppino"
+AC_INIT([xorg-server], 1.19.1, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE="2017-01-11"
+RELEASE_NAME="Maeuntang"
 AC_CONFIG_SRCDIR([Makefile.am])
 AC_CONFIG_MACRO_DIR([m4])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])

commit 82dcb68a8782d0cce6e6ce1a375cda05c91fe8c3
Author: Keith Packard 
Date:   Mon Jan 9 18:10:21 2017 -0800

AttendClient of grab-pervious client must queue to saved_ready_clients [v2]

A client which is attended while a grab is blocking execution of its
requests needs to be placed in the saved_ready_clients list so that it
will get scheduled once the grab terminates. Otherwise, if the client
never sends another request, there is no way for it to be placed in
the ready_clients list.

v2: Wrap comment above mark_client_saved_ready.
Remove test for OS_COMM_IGNORED which will always be true.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=99333
Reviewed-by: Adam Jackson 
Signed-off-by: Keith Packard 
(cherry picked from commit 785053d033e73d2deb0ded4b97eabfd881991978)

diff --git a/dix/dispatch.c b/dix/dispatch.c
index 3d0fe26..78ac095 100644
--- a/dix/dispatch.c
+++ b/dix/dispatch.c
@@ -266,6 +266,16 @@ mark_client_ready(ClientPtr client)
 xorg_list_append(>ready, _clients);
 }
 
+/*
+ * Client has requests queued or data on the network, but awaits a
+ * server grab release
+ */
+void mark_client_saved_ready(ClientPtr client)
+{
+if (xorg_list_is_empty(>ready))
+xorg_list_append(>ready, _ready_clients);
+}
+
 /* Client has no requests queued and no data on network */
 void
 mark_client_not_ready(ClientPtr client)
diff --git a/include/dixstruct.h b/include/dixstruct.h
index d71b0ac..21a6b8a 100644
--- a/include/dixstruct.h
+++ b/include/dixstruct.h
@@ -143,6 +143,12 @@ extern void SmartScheduleStopTimer(void);
 /* Client has requests queued or data on the network */
 void mark_client_ready(ClientPtr client);
 
+/*
+ * Client has requests queued or data on the network, but awaits a
+ * server grab release
+ */
+void mark_client_saved_ready(ClientPtr client);
+
 /* Client has no requests queued and no data on network */
 void mark_client_not_ready(ClientPtr client);
 
diff --git a/os/connection.c b/os/connection.c
index a901ebf..62e2980 100644
--- a/os/connection.c
+++ b/os/connection.c
@@ -1067,6 +1067,10 @@ AttendClient(ClientPtr client)
 set_poll_client(client);
 if (listen_to_client(client))
 mark_client_ready(client);
+else {
+/* grab active, mark ready when grab goes away */
+mark_client_saved_ready(client);
+}
 }
 
 /* make client impervious to grabs; assume only executing client calls this */

commit 14516988e095ed748e738c14a87c3656006846f7
Author: Qiang Yu 
Date:   Tue Jan 10 18:51:55 2017 +0800

randr: fix xserver crash when xrandr setprovideroutputsource

xrandr --setprovideroutputsource  
Xorg: ../../../xserver/dix/dispatch.c:4018: AttachOutputGPU:
Assertion `new->isGPU' failed.

GPUScreen is not allowed to be sink output.

Signed-off-by: Qiang Yu 
Reviewed-by: Hans de Goede 
Signed-off-by: Peter Hutterer 
(cherry picked from commit 555e0a42d138ac8d83af62638752a1bebad602d6)

diff --git a/randr/rrprovider.c b/randr/rrprovider.c
index f9df67e..e4bc2bf 100644
--- a/randr/rrprovider.c
+++ b/randr/rrprovider.c
@@ -338,6 +338,9 @@ ProcRRSetProviderOutputSource(ClientPtr client)
 pScreen = provider->pScreen;
 pScrPriv = rrGetScrPriv(pScreen);
 
+if (!pScreen->isGPU)
+return BadValue;
+
 pScrPriv->rrProviderSetOutputSource(pScreen, provider, source_provider);
 
 RRInitPrimeSyncProps(pScreen);

commit 3381e2c26b2ac40b1dd909439bf72559b80d0d86
Author: Qiang Yu 
Date:   Tue Jan 10 18:51:54 2017 +0800

xfree86: fix wrong usage of xf86optionListMerge

Signed-off-by: Qiang Yu 
Reviewed-by: Hans de Goede 
Signed-off-by: Peter Hutterer 
(cherry picked from commit 1012510620de7dadd0ab18b19a8e11facd884601)

diff --git a/hw/xfree86/common/xf86Option.c b/hw/xfree86/common/xf86Option.c
index 0e8bc1f..e9393fa 100644
--- 

xorg-server: Changes to 'upstream-unstable'

2016-11-22 Thread Emilio Pozuelo Monfort
 Xext/geext.c |   22 
 Xext/security.c  |2 
 Xext/shape.c |1 
 Xext/shm.c   |   12 
 Xext/sleepuntil.c|   17 
 Xext/sync.c  |   45 
 Xext/vidmode.c   |2 
 Xext/xace.c  |   45 
 Xext/xace.h  |   12 
 Xext/xf86bigfont.c   |   10 
 Xext/xres.c  |   96 -
 Xext/xselinux_hooks.c|   18 
 Xext/xvdisp.c|3 
 Xi/exevents.c|8 
 Xi/extinit.c |   17 
 Xi/stubs.c   |   14 
 Xi/xiproperty.c  |8 
 Xi/xiquerypointer.c  |4 
 composite/compalloc.c|4 
 composite/compext.c  |   29 
 config/config.c  |6 
 config/dbus-core.c   |   18 
 config/hal.c |4 
 config/udev.c|   57 
 config/wscons.c  |2 
 configure.ac |  173 +-
 damageext/damageext.c|   23 
 dix/devices.c|   81 -
 dix/dispatch.c   |  227 ++-
 dix/dixfonts.c   |  326 +++--
 dix/dixutils.c   |   45 
 dix/events.c |   17 
 dix/getevents.c  |   29 
 dix/inpututils.c |   17 
 dix/main.c   |   36 
 dix/pixmap.c |7 
 dix/privates.c   |9 
 dix/property.c   |   14 
 dix/ptrveloc.c   |   42 
 dix/resource.c   |   41 
 dix/selection.c  |3 
 dix/touch.c  |   92 -
 doc/Xinput.xml   |8 
 doc/Xserver-spec.xml |   59 
 dri3/dri3_request.c  |8 
 dri3/dri3int.h   |   26 
 exa/exa.c|   10 
 fb/fbimage.c |2 
 glamor/Makefile.am   |4 
 glamor/glamor.c  |   85 -
 glamor/glamor.h  |   40 
 glamor/glamor_composite_glyphs.c |3 
 glamor/glamor_copy.c |   45 
 glamor/glamor_core.c |  168 --
 glamor/glamor_egl.c  |  129 --
 glamor/glamor_egl.h  |   79 +
 glamor/glamor_egl_stubs.c|5 
 glamor/glamor_fbo.c  |  238 ---
 glamor/glamor_font.c |6 
 glamor/glamor_gradient.c |8 
 glamor/glamor_largepixmap.c  |2 
 glamor/glamor_picture.c  | 1003 +++
 glamor/glamor_priv.h |   55 
 glamor/glamor_program.c  |3 
 glamor/glamor_render.c   |   86 -
 glamor/glamor_spans.c|2 
 glamor/glamor_sync.c |3 
 glamor/glamor_utils.h|  559 
 glx/Makefile.am  |   10 
 glx/createcontext.c  |8 
 glx/extension_string.c   |5 
 glx/extension_string.h   |1 
 glx/glxcmds.c|   45 
 glx/glxcontext.h |5 
 glx/glxdrawable.h|3 
 glx/glxdri2.c|  182 +-
 glx/glxdricommon.c   |   62 
 glx/glxdricommon.h   |3 
 glx/glxdriswrast.c   |   98 -
 glx/glxext.c |   22 
 glx/glxscreens.c |   44 
 glx/glxscreens.h |   17 
 glx/single2.c|4 
 glx/single2swap.c|4 
 glx/singlepix.c  |1 
 

xorg-server: Changes to 'upstream-unstable'

2016-07-19 Thread Timo Aaltonen
 Xext/panoramiXprocs.c|4 
 Xext/saver.c |2 
 Xext/shm.c   |   17 
 Xi/exevents.c|3 
 configure.ac |   28 -
 dix/cursor.c |   23 +
 dix/devices.c|3 
 dix/enterleave.c |   20 -
 dix/ptrveloc.c   |   10 
 exa/exa_glyphs.c |8 
 exa/exa_render.c |3 
 glamor/glamor.c  |   45 ++
 glamor/glamor.h  |1 
 glamor/glamor_composite_glyphs.c |5 
 glamor/glamor_compositerects.c   |   18 
 glamor/glamor_copy.c |8 
 glamor/glamor_dash.c |3 
 glamor/glamor_egl.c  |   11 
 glamor/glamor_fbo.c  |4 
 glamor/glamor_priv.h |   28 +
 glamor/glamor_program.c  |8 
 glamor/glamor_render.c   |   94 +++-
 glamor/glamor_spans.c|3 
 glamor/glamor_text.c |   13 
 glamor/glamor_transfer.c |3 
 glamor/glamor_transform.c|   12 
 glamor/glamor_transform.h|4 
 glx/glxext.c |6 
 hw/kdrive/linux/keyboard.c   |  441 ---
 hw/xfree86/common/xf86Config.c   |   68 ++-
 hw/xfree86/common/xf86Configure.c|2 
 hw/xfree86/common/xf86Init.c |4 
 hw/xfree86/common/xf86Privstr.h  |1 
 hw/xfree86/drivers/modesetting/Makefile.am   |2 
 hw/xfree86/drivers/modesetting/driver.c  |   85 +++-
 hw/xfree86/drivers/modesetting/drmmode_display.c |   99 +++--
 hw/xfree86/drivers/modesetting/drmmode_display.h |2 
 hw/xfree86/drivers/modesetting/present.c |9 
 hw/xfree86/drivers/modesetting/sh3224.c  |  140 +++
 hw/xfree86/drivers/modesetting/sh3224.h  |7 
 hw/xfree86/int10/xf86x86emu.c|2 
 hw/xfree86/man/xorg.conf.man |4 
 hw/xfree86/modes/xf86Crtc.c  |3 
 hw/xfree86/os-support/linux/lnx_init.c   |   10 
 hw/xfree86/x86emu/x86emu/regs.h  |8 
 hw/xquartz/bundle/Info.plist.cpp |   23 -
 hw/xquartz/bundle/Makefile.am|6 
 hw/xwayland/xwayland-cursor.c|   15 
 hw/xwayland/xwayland-glamor-xv.c |2 
 hw/xwayland/xwayland-glamor.c|3 
 hw/xwayland/xwayland-output.c|   17 
 hw/xwayland/xwayland-shm.c   |   10 
 hw/xwayland/xwayland.h   |2 
 include/xkbsrv.h |4 
 os/access.c  |   44 ++
 present/present.c|   33 +
 randr/rrprovider.c   |2 
 render/picture.h |2 
 xkb/xkb.c|5 
 xkb/xkbEvents.c  |2 
 xkb/xkbLEDs.c|2 
 61 files changed, 765 insertions(+), 681 deletions(-)

New commits:
commit 8b312db7d1d98be67f0283d982428545cf948a66
Author: Adam Jackson 
Date:   Tue Jul 19 13:27:08 2016 -0400

xserver 1.18.4

Signed-off-by: Adam Jackson 

diff --git a/configure.ac b/configure.ac
index cfffcd8..868e859 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.18.3, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE="2016-04-04"
-RELEASE_NAME="Halloumi"
+AC_INIT([xorg-server], 1.18.4, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE="2016-07-19"
+RELEASE_NAME="Skordalia"
 AC_CONFIG_SRCDIR([Makefile.am])
 AC_CONFIG_MACRO_DIR([m4])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])

commit 42a74080ffe93502904ede7555652f01ab11d12d
Author: Michel Dänzer 
Date:   Wed Mar 30 18:23:04 2016 +0900

os: Use strtok instead of xstrtokenize in ComputeLocalClient

Fixes leaking the memory pointed to by the members of the array returned
by xstrtokenize.

Reviewed-by: Adam Jackson 
(cherry picked from commit e156c0ccb530897d3a428255bd5585f7ea7b9b41)

diff --git a/os/access.c b/os/access.c
index 08c4fd0..dac6f49 100644
--- 

xorg-server: Changes to 'upstream-unstable'

2016-04-05 Thread Timo Aaltonen
 Xext/vidmode.c |  212 ++---
 configure.ac   |6 
 glamor/glamor_fbo.c|4 
 hw/vfb/Makefile.am |1 
 hw/xfree86/dri2/pci_ids/radeonsi_pci_ids.h |   10 +
 hw/xfree86/modes/xf86Crtc.c|6 
 hw/xwayland/xwayland-cvt.c |4 
 hw/xwayland/xwayland-vidmode.c |   19 ++
 present/present.c  |2 
 9 files changed, 147 insertions(+), 117 deletions(-)

New commits:
commit 9454cd51da9b38b974cff7c8b7125901f6403848
Author: Adam Jackson 
Date:   Mon Apr 4 14:39:36 2016 -0400

xserver 1.18.3

Signed-off-by: Adam Jackson 

diff --git a/configure.ac b/configure.ac
index 612fff4..77cf234 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.18.2, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE="2016-03-11"
-RELEASE_NAME="Saganaki"
+AC_INIT([xorg-server], 1.18.3, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE="2016-04-04"
+RELEASE_NAME="Halloumi"
 AC_CONFIG_SRCDIR([Makefile.am])
 AC_CONFIG_MACRO_DIR([m4])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])

commit 082d5ea9a8f882c5ab7c30c481e2d9a5c5f11376
Author: Olivier Fourdan 
Date:   Mon Mar 21 09:53:17 2016 +0100

xwayland: Pretend we support viewport in vidmode

Some games (namely openttd) will raise an XError and fail with a
BadValue if their request to XF86VidModeSetViewPort fails.

Support only the default zoom and viewport, fail for everything else.

Signed-off-by: Olivier Fourdan 
Reviewed-by: Hans de Goede 
(cherry picked from commit 44e1c97ca6fe992bbb6ef9ecb0b82a113adfa57e)

diff --git a/hw/xwayland/xwayland-vidmode.c b/hw/xwayland/xwayland-vidmode.c
index 6d70e39..0bcd114 100644
--- a/hw/xwayland/xwayland-vidmode.c
+++ b/hw/xwayland/xwayland-vidmode.c
@@ -208,15 +208,26 @@ xwlVidModeDeleteModeline(ScreenPtr pScreen, 
DisplayModePtr mode)
 static Bool
 xwlVidModeZoomViewport(ScreenPtr pScreen, int zoom)
 {
-/* Unsupported for now */
-return FALSE;
+/* Support only no zoom */
+return (zoom == 1);
 }
 
 static Bool
 xwlVidModeSetViewPort(ScreenPtr pScreen, int x, int y)
 {
-/* Unsupported for now */
-return FALSE;
+RROutputPtr output;
+RRCrtcPtr crtc;
+
+output = RRFirstOutput(pScreen);
+if (output == NULL)
+return FALSE;
+
+crtc = output->crtc;
+if (crtc == NULL)
+return FALSE;
+
+/* Support only default viewport */
+return (x == crtc->x && y == crtc->y);
 }
 
 static Bool

commit fcb89adb4a6cde585923e63d3c34df465aa78d1b
Author: Olivier Fourdan 
Date:   Thu Mar 17 14:39:45 2016 +0100

xwayland: do not include frequency in mode name

Some applications (e.g. using lwjgl) try to parse the output of the
xrandr command and get confused with the mode name returned by Xwayland,
because it contains "@[frequency]" (e.g. "1024x640@60.0Hz").

Remove the @[frequency] part of the mode name to match what is found in
usual mode names on regular X servers to please those applications.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=94589

Signed-off-by: Olivier Fourdan 
Reviewed-by: Daniel Stone 
(cherry picked from commit 6e3a6e30a6ac66942a0756a5d079993181f02e34)

diff --git a/hw/xwayland/xwayland-cvt.c b/hw/xwayland/xwayland-cvt.c
index 3566559..9655e10 100644
--- a/hw/xwayland/xwayland-cvt.c
+++ b/hw/xwayland/xwayland-cvt.c
@@ -296,8 +296,8 @@ xwayland_cvt(int HDisplay, int VDisplay, float VRefresh, 
Bool Reduced,
 if (Interlaced)
 modeinfo.modeFlags |= RR_Interlace;
 
-snprintf(name, sizeof name, "%dx%d@%.1fHz",
- modeinfo.width, modeinfo.height, VRefresh);
+snprintf(name, sizeof name, "%dx%d",
+ modeinfo.width, modeinfo.height);
 modeinfo.nameLength = strlen(name);
 
 return RRModeGet(, name);

commit b8f9fd83189bd5593793c1cfcbfedb5150d7c5a5
Author: Michel Dänzer 
Date:   Thu Mar 24 17:34:23 2016 +0900

xfree86/modes: Make sure the HW cursor is hidden when it should be

When the HW cursor is hidden (e.g. because xf86CursorResetCursor
triggers a switch from HW cursor to SW cursor), the driver isn't
notified of this for disabled CRTCs. If the HW cursor was shown when the
CRTC was disabled, it may still be displayed when the CRTC is enabled
again.

Prevent this by explicitly hiding the HW cursor again after setting a
mode if it's currently supposed to be hidden.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=94560

xorg-server: Changes to 'upstream-unstable'

2016-03-11 Thread Timo Aaltonen
 Xext/Makefile.am |7 
 Xext/vidmode.c   | 2151 +++
 Xext/xvmain.c|   11 
 Xext/xvmc.c  |   17 
 autogen.sh   |3 
 configure.ac |   29 
 dix/dixutils.c   |   22 
 dix/window.c |   32 
 dri3/dri3_request.c  |4 
 glamor/Makefile.am   |6 
 glamor/glamor.c  |   16 
 glamor/glamor.h  |4 
 glamor/glamor_composite_glyphs.c |   14 
 glamor/glamor_copy.c |   15 
 glamor/glamor_core.c |   22 
 glamor/glamor_dash.c |6 
 glamor/glamor_egl.c  |  189 +-
 glamor/glamor_egl_stubs.c|6 
 glamor/glamor_fbo.c  |   43 
 glamor/glamor_glyphblt.c |   12 
 glamor/glamor_gradient.c |   33 
 glamor/glamor_lines.c|6 
 glamor/glamor_picture.c  |   49 
 glamor/glamor_points.c   |7 
 glamor/glamor_priv.h |   50 
 glamor/glamor_program.c  |   49 
 glamor/glamor_program.h  |1 
 glamor/glamor_rects.c|7 
 glamor/glamor_render.c   |  424 ++--
 glamor/glamor_segs.c |6 
 glamor/glamor_spans.c|   23 
 glamor/glamor_text.c |8 
 glamor/glamor_transfer.c |   18 
 glamor/glamor_transform.c|   23 
 glamor/glamor_transform.h|   15 
 glamor/glamor_utils.h|   52 
 glamor/glamor_vbo.c  |9 
 glamor/glamor_xv.c   |  224 +-
 glx/extension_string.c   |2 
 glx/extension_string.h   |2 
 glx/glxcmds.c|   59 
 glx/glxdri2.c|6 
 glx/glxdriswrast.c   |1 
 hw/dmx/glxProxy/glxcmds.c|5 
 hw/kdrive/ephyr/ephyr_glamor_glx.c   |  122 +
 hw/kdrive/linux/evdev.c  |   11 
 hw/kdrive/src/kdrive.c   |4 
 hw/vfb/InitOutput.c  |4 
 hw/xfree86/Makefile.am   |4 
 hw/xfree86/common/Makefile.am|5 
 hw/xfree86/common/vidmodeproc.h  |   83 
 hw/xfree86/common/xf86Config.c   |8 
 hw/xfree86/common/xf86Extensions.c   |3 
 hw/xfree86/common/xf86Helper.c   |4 
 hw/xfree86/common/xf86Init.c |1 
 hw/xfree86/common/xf86Privstr.h  |   10 
 hw/xfree86/common/xf86VidMode.c  |  582 ++
 hw/xfree86/common/xf86str.h  |   92 
 hw/xfree86/common/xf86vmode.c| 1955 
 hw/xfree86/dri/dri.c |8 
 hw/xfree86/dri2/dri2.c   |  130 -
 hw/xfree86/dri2/pci_ids/Makefile.am  |1 
 hw/xfree86/dri2/pci_ids/pci_id_driver_map.h  |7 
 hw/xfree86/dri2/pci_ids/virtio_gpu_pci_ids.h |2 
 hw/xfree86/drivers/modesetting/dri2.c|4 
 hw/xfree86/drivers/modesetting/drmmode_display.c |1 
 hw/xfree86/modes/xf86Crtc.c  |6 
 hw/xfree86/modes/xf86Cursors.c   |   21 
 hw/xfree86/modes/xf86RandR12.c   |4 
 hw/xfree86/ramdac/xf86Cursor.c   |   24 
 hw/xfree86/ramdac/xf86Cursor.h   |1 
 hw/xquartz/darwinEvents.c|2 
 hw/xquartz/quartz.c  |4 
 hw/xquartz/quartz.h  |2 
 hw/xwayland/Makefile.am  |9 
 hw/xwayland/xwayland-glamor-xv.c |  412 
 hw/xwayland/xwayland-glamor.c|   29 
 hw/xwayland/xwayland-input.c |   10 
 hw/xwayland/xwayland-output.c|   10 
 hw/xwayland/xwayland-shm.c   |   12 
 hw/xwayland/xwayland-vidmode.c   |  408 
 hw/xwayland/xwayland.c   |   15 
 hw/xwayland/xwayland.h   |   10 
 hw/xwin/winauth.c|   17 
 hw/xwin/winclipboard/internal.h  |8 
 

xorg-server: Changes to 'upstream-unstable'

2016-02-09 Thread Timo Aaltonen
Rebased ref, commits from common ancestor:
commit 23e60f917a5af652cd83b8a3a9951c79838721b3
Author: Adam Jackson 
Date:   Mon Feb 8 18:32:57 2016 -0500

xserver 1.18.1

Signed-off-by: Adam Jackson 

diff --git a/configure.ac b/configure.ac
index a9b6954..4808ef4 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.18.0, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE="2015-11-09"
-RELEASE_NAME="Moussaka"
+AC_INIT([xorg-server], 1.18.1, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE="2016-02-08"
+RELEASE_NAME="Spanakopita"
 AC_CONFIG_SRCDIR([Makefile.am])
 AC_CONFIG_MACRO_DIR([m4])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])

commit a0d49b1c660f2453d07ce23bf86b0ef717f3d2c8
Author: Timo Aaltonen 
Date:   Wed Jan 27 14:18:50 2016 +0200

dri2: Sync i915_pci_ids.h and i965_pci_ids.h from mesa

Adds Skylake, Kabylake and Broxton allowing them to use
modesetting + glamor with dri2.

Signed-off-by: Timo Aaltonen 
Reviewed-by: Andreas Boll 
(cherry picked from commit 50ca286d79f6304b972ea74487308e7794a170fb)

diff --git a/hw/xfree86/dri2/pci_ids/i915_pci_ids.h 
b/hw/xfree86/dri2/pci_ids/i915_pci_ids.h
index 7d51975..1c43c8e 100644
--- a/hw/xfree86/dri2/pci_ids/i915_pci_ids.h
+++ b/hw/xfree86/dri2/pci_ids/i915_pci_ids.h
@@ -11,5 +11,5 @@ CHIPSET(0x27AE, I945_GME, "Intel(R) 945GME")
 CHIPSET(0x29B2, Q35_G,"Intel(R) Q35")
 CHIPSET(0x29C2, G33_G,"Intel(R) G33")
 CHIPSET(0x29D2, Q33_G,"Intel(R) Q33")
-CHIPSET(0xA011, IGD_GM,   "Intel(R) IGD")
-CHIPSET(0xA001, IGD_G,"Intel(R) IGD")
+CHIPSET(0xA011, PNV_GM,   "Intel(R) Pineview M")
+CHIPSET(0xA001, PNV_G,"Intel(R) Pineview")
diff --git a/hw/xfree86/dri2/pci_ids/i965_pci_ids.h 
b/hw/xfree86/dri2/pci_ids/i965_pci_ids.h
index 2e04301..5139e27 100644
--- a/hw/xfree86/dri2/pci_ids/i965_pci_ids.h
+++ b/hw/xfree86/dri2/pci_ids/i965_pci_ids.h
@@ -109,7 +109,55 @@ CHIPSET(0x162A, bdw_gt3, "Intel(R) Iris Pro P6300 
(Broadwell GT3e)")
 CHIPSET(0x162B, bdw_gt3, "Intel(R) Iris 6100 (Broadwell GT3)")
 CHIPSET(0x162D, bdw_gt3, "Intel(R) Broadwell GT3")
 CHIPSET(0x162E, bdw_gt3, "Intel(R) Broadwell GT3")
-CHIPSET(0x22B0, chv, "Intel(R) Cherryview")
-CHIPSET(0x22B1, chv, "Intel(R) Cherryview")
-CHIPSET(0x22B2, chv, "Intel(R) Cherryview")
-CHIPSET(0x22B3, chv, "Intel(R) Cherryview")
+CHIPSET(0x1902, skl_gt1, "Intel(R) HD Graphics 510 (Skylake GT1)")
+CHIPSET(0x1906, skl_gt1, "Intel(R) HD Graphics 510 (Skylake GT1)")
+CHIPSET(0x190A, skl_gt1, "Intel(R) Skylake GT1")
+CHIPSET(0x190E, skl_gt1, "Intel(R) Skylake GT1")
+CHIPSET(0x1912, skl_gt2, "Intel(R) HD Graphics 530 (Skylake GT2)")
+CHIPSET(0x1913, skl_gt2, "Intel(R) Skylake GT2f")
+CHIPSET(0x1915, skl_gt2, "Intel(R) Skylake GT2f")
+CHIPSET(0x1916, skl_gt2, "Intel(R) HD Graphics 520 (Skylake GT2)")
+CHIPSET(0x1917, skl_gt2, "Intel(R) Skylake GT2f")
+CHIPSET(0x191A, skl_gt2, "Intel(R) Skylake GT2")
+CHIPSET(0x191B, skl_gt2, "Intel(R) HD Graphics 530 (Skylake GT2)")
+CHIPSET(0x191D, skl_gt2, "Intel(R) HD Graphics P530 (Skylake GT2)")
+CHIPSET(0x191E, skl_gt2, "Intel(R) HD Graphics 515 (Skylake GT2)")
+CHIPSET(0x1921, skl_gt2, "Intel(R) Skylake GT2")
+CHIPSET(0x1923, skl_gt3, "Intel(R) Iris Graphics 540 (Skylake GT3e)")
+CHIPSET(0x1926, skl_gt3, "Intel(R) HD Graphics 535 (Skylake GT3)")
+CHIPSET(0x1927, skl_gt3, "Intel(R) Iris Graphics 550 (Skylake GT3e)")
+CHIPSET(0x192A, skl_gt4, "Intel(R) Skylake GT4")
+CHIPSET(0x192B, skl_gt3, "Intel(R) Iris Graphics (Skylake GT3fe)")
+CHIPSET(0x1932, skl_gt4, "Intel(R) Skylake GT4")
+CHIPSET(0x193A, skl_gt4, "Intel(R) Skylake GT4")
+CHIPSET(0x193B, skl_gt4, "Intel(R) Skylake GT4")
+CHIPSET(0x193D, skl_gt4, "Intel(R) Skylake GT4")
+CHIPSET(0x5902, kbl_gt1, "Intel(R) Kabylake GT1")
+CHIPSET(0x5906, kbl_gt1, "Intel(R) Kabylake GT1")
+CHIPSET(0x590A, kbl_gt1, "Intel(R) Kabylake GT1")
+CHIPSET(0x590B, kbl_gt1, "Intel(R) Kabylake GT1")
+CHIPSET(0x590E, kbl_gt1, "Intel(R) Kabylake GT1")
+CHIPSET(0x5913, kbl_gt1_5, "Intel(R) Kabylake GT1.5")
+CHIPSET(0x5915, kbl_gt1_5, "Intel(R) Kabylake GT1.5")
+CHIPSET(0x5917, kbl_gt1_5, "Intel(R) Kabylake GT1.5")
+CHIPSET(0x5912, kbl_gt2, "Intel(R) Kabylake GT2")
+CHIPSET(0x5916, kbl_gt2, "Intel(R) Kabylake GT2")
+CHIPSET(0x591A, kbl_gt2, "Intel(R) Kabylake GT2")
+CHIPSET(0x591B, kbl_gt2, "Intel(R) Kabylake GT2")
+CHIPSET(0x591D, kbl_gt2, "Intel(R) Kabylake GT2")
+CHIPSET(0x591E, kbl_gt2, "Intel(R) Kabylake GT2")
+CHIPSET(0x5921, kbl_gt2, "Intel(R) Kabylake GT2F")
+CHIPSET(0x5926, kbl_gt3, "Intel(R) Kabylake GT3")
+CHIPSET(0x592A, kbl_gt3, "Intel(R) Kabylake GT3")
+CHIPSET(0x592B, kbl_gt3, "Intel(R) Kabylake GT3")
+CHIPSET(0x5932, kbl_gt4, "Intel(R) Kabylake GT4")
+CHIPSET(0x593A, kbl_gt4, "Intel(R) 

xorg-server: Changes to 'upstream-unstable'

2015-06-24 Thread Sven Joachim
Rebased ref, commits from common ancestor:
commit 2123f7682d522619f101b05fb75efa75dabbe371
Author: Adam Jackson a...@redhat.com
Date:   Tue Jun 16 11:42:47 2015 -0400

xserver 1.17.2

Signed-off-by: Adam Jackson a...@redhat.com

diff --git a/configure.ac b/configure.ac
index 847b5c4..d8f0e74 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,8 +26,8 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.60)
-AC_INIT([xorg-server], 1.17.1, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE=2015-02-10
+AC_INIT([xorg-server], 1.17.2, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE=2015-06-16
 RELEASE_NAME=lambic
 AC_CONFIG_SRCDIR([Makefile.am])
 AC_CONFIG_MACRO_DIR([m4])

commit 8a5fb096d43577a061f7769d9257cbedaac998ef
Author: Dave Airlie airl...@redhat.com
Date:   Thu May 28 05:30:01 2015 +

glamor: don't do render ops with matching source/dest (v2)

XRender defines this, GL really doesn't like it.

kwin 4.x and qt 4.x seem to make this happen for the
gradient in the titlebar, and on radeonsi/r600 hw
this draws all kinds of wrong.

v2: bump this up a level, and check it earlier.
(I assume the  was for this case.)

[This corresponds to fa12f2c150b2f50de9dac4a2b09265f13af353af in master,
fixed up for 1.17 branch. - ajax]

Signed-off-by: Dave Airlie airl...@redhat.com

diff --git a/glamor/glamor_largepixmap.c b/glamor/glamor_largepixmap.c
index 9b24584..b9c3b9a 100644
--- a/glamor/glamor_largepixmap.c
+++ b/glamor/glamor_largepixmap.c
@@ -1046,6 +1046,15 @@ glamor_composite_largepixmap_region(CARD8 op,
 int source_repeat_type = 0, mask_repeat_type = 0;
 int ok = TRUE;
 
+if (source_pixmap_priv == dest_pixmap_priv) {
+glamor_fallback(source and dest pixmaps are the same\n);
+return FALSE;
+}
+if (mask_pixmap_priv ==  dest_pixmap_priv) {
+glamor_fallback(mask and dest pixmaps are the same\n);
+return FALSE;
+}
+
 if (source-repeat)
 source_repeat_type = source-repeatType;
 else
diff --git a/glamor/glamor_render.c b/glamor/glamor_render.c
index 2386f2e..d9b16ea 100644
--- a/glamor/glamor_render.c
+++ b/glamor/glamor_render.c
@@ -1400,6 +1400,7 @@ glamor_composite_clipped_region(CARD8 op,
 {
 ScreenPtr screen = dest-pDrawable-pScreen;
 PixmapPtr source_pixmap = NULL, mask_pixmap = NULL;
+PixmapPtr dest_pixmap = glamor_get_drawable_pixmap(dest-pDrawable);
 PicturePtr temp_src = source, temp_mask = mask;
 glamor_pixmap_private *temp_src_priv = source_pixmap_priv;
 glamor_pixmap_private *temp_mask_priv = mask_pixmap_priv;
@@ -1502,7 +1503,14 @@ glamor_composite_clipped_region(CARD8 op,
 }
 }
 
-/*X, self copy? */
+if (source_pixmap == dest_pixmap) {
+glamor_fallback(source and dest pixmaps are the same\n);
+goto out;
+}
+if (mask_pixmap == dest_pixmap) {
+glamor_fallback(mask and dest pixmaps are the same\n);
+goto out;
+}
 
 x_dest += dest-pDrawable-x;
 y_dest += dest-pDrawable-y;

commit ea9e02184399e9979654544dde8926912a8aa2c8
Author: Rui Matos tiagoma...@gmail.com
Date:   Wed May 27 12:08:45 2015 +0200

xwayland: Throttle our cursor surface updates with a frame callback

In some extreme cases with animated cursors at a high frame rate we
could end up filling the wl_display outgoing buffer and end up with
wl_display_flush() failing.

In any case, using the frame callback to throttle ourselves is the
right thing to do.

Signed-off-by: Rui Matos tiagoma...@gmail.com
Reviewed-by: Daniel Stone dani...@collabora.com
Signed-off-by: Keith Packard kei...@keithp.com
(cherry picked from commit cbb7eb73b5399e31a7afb800363504d539df0ecf)

diff --git a/hw/xwayland/xwayland-cursor.c b/hw/xwayland/xwayland-cursor.c
index 5a9d1fe..c137e1e 100644
--- a/hw/xwayland/xwayland-cursor.c
+++ b/hw/xwayland/xwayland-cursor.c
@@ -82,6 +82,23 @@ xwl_unrealize_cursor(DeviceIntPtr device, ScreenPtr screen, 
CursorPtr cursor)
 return xwl_shm_destroy_pixmap(pixmap);
 }
 
+static void
+frame_callback(void *data,
+   struct wl_callback *callback,
+   uint32_t time)
+{
+struct xwl_seat *xwl_seat = data;
+xwl_seat-cursor_frame_cb = NULL;
+if (xwl_seat-cursor_needs_update) {
+xwl_seat-cursor_needs_update = FALSE;
+xwl_seat_set_cursor(xwl_seat);
+}
+}
+
+static const struct wl_callback_listener frame_listener = {
+frame_callback
+};
+
 void
 xwl_seat_set_cursor(struct xwl_seat *xwl_seat)
 {
@@ -98,6 +115,11 @@ xwl_seat_set_cursor(struct xwl_seat *xwl_seat)
 return;
 }
 
+if (xwl_seat-cursor_frame_cb) {
+xwl_seat-cursor_needs_update = TRUE;
+return;
+}
+
 cursor = xwl_seat-x_cursor;
 pixmap = dixGetPrivate(cursor-devPrivates, 

xorg-server: Changes to 'upstream-unstable'

2015-02-10 Thread Julien Cristau
 config/udev.c  |   30 ++
 configure.ac   |4 -
 dix/dispatch.c |2 
 hw/xfree86/dri2/dri2.c |3 +
 include/regionstr.h|2 
 os/WaitFor.c   |   41 
 randr/rroutput.c   |6 ++
 randr/rrscreen.c   |   22 --
 randr/rrxinerama.c |   12 -
 xkb/xkb.c  |  100 -
 10 files changed, 146 insertions(+), 76 deletions(-)

New commits:
commit ff76b219f6513b5ef63105165c301f7d69da0e05
Author: Julien Cristau jcris...@debian.org
Date:   Wed Feb 11 00:33:17 2015 +0100

Bump to 1.16.4

Signed-off-by: Julien Cristau jcris...@debian.org

diff --git a/configure.ac b/configure.ac
index 2964c34..efcaa1f 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.16.3, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+AC_INIT([xorg-server], 1.16.4, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
 RELEASE_DATE=2014-12-20
 RELEASE_NAME=Marionberry Pie
 AC_CONFIG_SRCDIR([Makefile.am])

commit 8f61533b16635a0a13f4048235246edb138fa40b
Author: Olivier Fourdan ofour...@redhat.com
Date:   Fri Jan 16 08:44:45 2015 +0100

xkb: Check strings length against request size

Ensure that the given strings length in an XkbSetGeometry request remain
within the limits of the size of the request.

Signed-off-by: Olivier Fourdan ofour...@redhat.com
Reviewed-by: Peter Hutterer peter.hutte...@who-t.net
Signed-off-by: Peter Hutterer peter.hutte...@who-t.net
(cherry picked from commit 20079c36cf7d377938ca5478447d8b9045cb7d43)
(cherry picked from commit f160e722672dbb2b5215870b47bcc51461d96ff1)
Signed-off-by: Julien Cristau jcris...@debian.org

diff --git a/xkb/xkb.c b/xkb/xkb.c
index 6fc938b..c8a9e9e 100644
--- a/xkb/xkb.c
+++ b/xkb/xkb.c
@@ -4957,25 +4957,29 @@ ProcXkbGetGeometry(ClientPtr client)
 
 /******/
 
-static char *
-_GetCountedString(char **wire_inout, Bool swap)
+static Status
+_GetCountedString(char **wire_inout, ClientPtr client, char **str)
 {
-char *wire, *str;
+char *wire, *next;
 CARD16 len;
 
 wire = *wire_inout;
 len = *(CARD16 *) wire;
-if (swap) {
+if (client-swapped) {
 swaps(len);
 }
-str = malloc(len + 1);
-if (str) {
-memcpy(str, wire[2], len);
-str[len] = '\0';
-}
-wire += XkbPaddedSize(len + 2);
-*wire_inout = wire;
-return str;
+next = wire + XkbPaddedSize(len + 2);
+/* Check we're still within the size of the request */
+if (client-req_len 
+bytes_to_int32(next - (char *) client-requestBuffer))
+return BadValue;
+*str = malloc(len + 1);
+if (!*str)
+return BadAlloc;
+memcpy(*str, wire[2], len);
+*(*str + len) = '\0';
+*wire_inout = next;
+return Success;
 }
 
 static Status
@@ -4987,6 +4991,7 @@ _CheckSetDoodad(char **wire_inout,
 xkbAnyDoodadWireDesc any;
 xkbTextDoodadWireDesc text;
 XkbDoodadPtr doodad;
+Status status;
 
 dWire = (xkbDoodadWireDesc *) (*wire_inout);
 any = dWire-any;
@@ -5036,8 +5041,14 @@ _CheckSetDoodad(char **wire_inout,
 doodad-text.width = text.width;
 doodad-text.height = text.height;
 doodad-text.color_ndx = dWire-text.colorNdx;
-doodad-text.text = _GetCountedString(wire, client-swapped);
-doodad-text.font = _GetCountedString(wire, client-swapped);
+status = _GetCountedString(wire, client, doodad-text.text);
+if (status != Success)
+return status;
+status = _GetCountedString(wire, client, doodad-text.font);
+if (status != Success) {
+free (doodad-text.text);
+return status;
+}
 break;
 case XkbIndicatorDoodad:
 if (dWire-indicator.onColorNdx = geom-num_colors) {
@@ -5072,7 +5083,9 @@ _CheckSetDoodad(char **wire_inout,
 }
 doodad-logo.color_ndx = dWire-logo.colorNdx;
 doodad-logo.shape_ndx = dWire-logo.shapeNdx;
-doodad-logo.logo_name = _GetCountedString(wire, client-swapped);
+status = _GetCountedString(wire, client, doodad-logo.logo_name);
+if (status != Success)
+return status;
 break;
 default:
 client-errorValue = _XkbErrCode2(0x4F, dWire-any.type);
@@ -5304,18 +5317,20 @@ _CheckSetGeom(XkbGeometryPtr geom, xkbSetGeometryReq * 
req, ClientPtr client)
 char *wire;
 
 wire = (char *) req[1];
-geom-label_font = _GetCountedString(wire, client-swapped);
+status = _GetCountedString(wire, client, geom-label_font);
+if (status != Success)
+return status;
 
 for (i = 0; i  req-nProperties; i++) {
 char *name, *val;
 
-name = 

xorg-server: Changes to 'upstream-unstable'

2014-11-03 Thread Julien Cristau
 Xext/shm.c|   15 +++
 configure.ac  |4 ++--
 dix/devices.c |2 +-
 fb/fbwindow.c |2 +-
 present/present.c |6 +++---
 5 files changed, 14 insertions(+), 15 deletions(-)

New commits:
commit 151ec89574c0d1b4566137d0f2d965ef48f04ec5
Author: Julien Cristau jcris...@debian.org
Date:   Sun Nov 2 11:21:33 2014 +0100

Bump to 1.16.1.901

diff --git a/configure.ac b/configure.ac
index c556721..3a9a961 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,8 +26,8 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.60)
-AC_INIT([xorg-server], 1.16.1, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE=2014-09-21
+AC_INIT([xorg-server], 1.16.1.901, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE=2014-11-02
 RELEASE_NAME=Marionberry Pie
 AC_CONFIG_SRCDIR([Makefile.am])
 AC_CONFIG_MACRO_DIR([m4])

commit a4d9637504ea4c97ca22d86c9f2e275f5253470d
Author: Chris Wilson ch...@chris-wilson.co.uk
Date:   Thu Oct 16 14:09:08 2014 +0100

Xext/shm: Detach SHM segment after Pixmap is released

The GPU may still have a reference to the SHM segment which would only
be finally released when the Pixmap is destroy. So we can only detach
the SHM segment (and thereby making the memory unaccessible) after the
backend has had a chance to flush any remaining references.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=85058
Signed-off-by: Chris Wilson ch...@chris-wilson.co.uk
Reported-and-tested-by: ged...@gmail.com
Reviewed-by: Adam Jackson a...@redhat.com
Signed-off-by: Keith Packard kei...@keithp.com
(cherry picked from commit 9b29fa957a397664463c7c78fbcc2f34d1993271)
Signed-off-by: Julien Cristau jcris...@debian.org

diff --git a/Xext/shm.c b/Xext/shm.c
index 4dad8b6..b787918 100644
--- a/Xext/shm.c
+++ b/Xext/shm.c
@@ -248,21 +248,20 @@ ShmDestroyPixmap(PixmapPtr pPixmap)
 {
 ScreenPtr pScreen = pPixmap-drawable.pScreen;
 ShmScrPrivateRec *screen_priv = ShmGetScreenPriv(pScreen);
+void *shmdesc = NULL;
 Bool ret;
 
-if (pPixmap-refcnt == 1) {
-ShmDescPtr shmdesc;
-
-shmdesc = (ShmDescPtr) dixLookupPrivate(pPixmap-devPrivates,
-shmPixmapPrivateKey);
-if (shmdesc)
-ShmDetachSegment((void *) shmdesc, pPixmap-drawable.id);
-}
+if (pPixmap-refcnt == 1)
+shmdesc = dixLookupPrivate(pPixmap-devPrivates, shmPixmapPrivateKey);
 
 pScreen-DestroyPixmap = screen_priv-destroyPixmap;
 ret = (*pScreen-DestroyPixmap) (pPixmap);
 screen_priv-destroyPixmap = pScreen-DestroyPixmap;
 pScreen-DestroyPixmap = ShmDestroyPixmap;
+
+if (shmdesc)
+   ShmDetachSegment(shmdesc, pPixmap-drawable.id);
+
 return ret;
 }
 

commit a7c207cc8e713092c51401baddbb3a30de398a34
Author: Axel Davy axel.d...@ens.fr
Date:   Wed Oct 29 13:31:42 2014 +0100

Fix present_notify to return right away when querying current or past msc.

When the target msc is past or is the current one, we want to get immediate
feedback. This patch fixes this behaviour.

Signed-off-by: Axel Davy axel.d...@ens.fr
Reviewed-by: Keith Packard kei...@keithp.com
Signed-off-by: Keith Packard kei...@keithp.com
(cherry picked from commit 882f2d10d99a04a96afc0ce0c8937e16bec3afb5)
Signed-off-by: Julien Cristau jcris...@debian.org

diff --git a/present/present.c b/present/present.c
index 4596c4a..cf283f4 100644
--- a/present/present.c
+++ b/present/present.c
@@ -858,7 +858,7 @@ present_pixmap(WindowPtr window,
 
 xorg_list_add(vblank-event_queue, present_exec_queue);
 vblank-queued = TRUE;
-if (target_msc = crtc_msc) {
+if ((pixmap  target_msc = crtc_msc) || (!pixmap  target_msc  
crtc_msc)) {
 ret = present_queue_vblank(screen, target_crtc, vblank-event_id, 
target_msc);
 if (ret != Success) {
 xorg_list_del(vblank-event_queue);
@@ -921,7 +921,7 @@ present_notify_msc(WindowPtr window,
   0, 0,
   NULL,
   NULL, NULL,
-  0,
+  PresentOptionAsync,
   target_msc, divisor, remainder, NULL, 0);
 }
 

commit 27600a6b2056b8cf6af8b6b0f078164ef36c0767
Author: Axel Davy axel.d...@ens.fr
Date:   Sat Sep 27 23:17:13 2014 +0200

Fix present_pixmap when using present_notify_msc

Calling present_notify_msc could cancel a pending pixmap presentation.

Signed-off-by: Axel Davy axel.d...@ens.fr
Reviewed-by: Keith Packard kei...@keithp.com
Signed-off-by: Keith Packard kei...@keithp.com
(cherry picked from commit 9bc01dfc7070a40f5948588895b3a11dd1636d0e)
Signed-off-by: Julien Cristau jcris...@debian.org

diff --git a/present/present.c b/present/present.c
index 3aea0d7..4596c4a 100644
--- a/present/present.c
+++ 

xorg-server: Changes to 'upstream-unstable'

2014-09-15 Thread Julien Cristau
 configure.ac|4 ++--
 glamor/glamor_render.c  |   16 
 hw/xfree86/common/xf86Bus.c |3 +++
 hw/xfree86/common/xf86platformBus.c |   24 
 hw/xfree86/common/xf86platformBus.h |1 +
 hw/xquartz/xpr/xprScreen.c  |   23 +--
 mi/mieq.c   |2 +-
 os/connection.c |7 ---
 present/present_event.c |2 +-
 9 files changed, 53 insertions(+), 29 deletions(-)

New commits:
commit 3ce47886c58b0640697f243a5df7060109c8346f
Author: Julien Cristau jcris...@debian.org
Date:   Mon Sep 15 22:55:16 2014 +0200

Bump to 1.16.0.901

Signed-off-by: Julien Cristau jcris...@debian.org

diff --git a/configure.ac b/configure.ac
index 1c327fd..d93eb21 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,8 +26,8 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.60)
-AC_INIT([xorg-server], 1.16.0, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE=2014-07-16
+AC_INIT([xorg-server], 1.16.0.901, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE=2014-09-15
 RELEASE_NAME=Marionberry Pie
 AC_CONFIG_SRCDIR([Makefile.am])
 AC_CONFIG_MACRO_DIR([m4])

commit c48d07cf0e6edfc92dcb97de66c2484a8ddba452
Author: Keith Packard kei...@keithp.com
Date:   Thu Sep 4 08:36:07 2014 -0700

glx/present: Only send GLX_BufferSwapComplete for PresentCompleteKindPixmap

Present didn't provide the 'kind' argument to the
present_complete_notify hook that GLX uses to construct
GLX_BufferSwapComplete events, so GLX was reporting events for
PresentCompleteKindMSC notifications, which resulted in duplicate
GLX_BufferSwapComplete events and crashes in clutter.

See the gnome bug: https://bugzilla.gnome.org/show_bug.cgi?id=733282

Signed-off-by: Keith Packard kei...@keithp.com
Reviewed-by: Eric Anholt e...@anholt.net
(cherry picked from commit bf338efc678258d2d366dff2ed873752f98f0bfc)
[backport to 1.16: check 'kind' in the caller to avoid ABI change]
Signed-off-by: Julien Cristau jcris...@debian.org

diff --git a/present/present_event.c b/present/present_event.c
index ff57eba..e9b8276 100644
--- a/present/present_event.c
+++ b/present/present_event.c
@@ -173,7 +173,7 @@ present_send_complete_notify(WindowPtr window, CARD8 kind, 
CARD8 mode, CARD32 se
 }
 }
 }
-if (complete_notify)
+if (complete_notify  kind == PresentCompleteKindPixmap)
 (*complete_notify)(window, mode, serial, ust, msc);
 }
 

commit fbe977941abb0a6db19b345652b6106d849899c1
Author: Thierry Reding tred...@nvidia.com
Date:   Thu Feb 13 13:36:12 2014 +0100

xfree86: Allow non-PCI devices as primary

On platforms that don't support PCI or have no GPU attached to the PCI
bus, there can still be a primary device on a non-PCI bus.

Signed-off-by: Thierry Reding tred...@nvidia.com
Reviewed-by: Rob Clark robdcl...@gmail.com
Tested-by: Rob Clark robdcl...@gmail.com
Signed-off-by: Keith Packard kei...@keithp.com
(cherry picked from commit 5d133276de9c50146e80ffc69edd429c2afe98e6)
Signed-off-by: Hans de Goede hdego...@redhat.com
Signed-off-by: Julien Cristau jcris...@debian.org

diff --git a/hw/xfree86/common/xf86platformBus.c 
b/hw/xfree86/common/xf86platformBus.c
index 1890494..c541788 100644
--- a/hw/xfree86/common/xf86platformBus.c
+++ b/hw/xfree86/common/xf86platformBus.c
@@ -476,10 +476,9 @@ xf86platformProbeDev(DriverPtr drvp)
 /* for non-seat0 servers assume first device is the master */
 if (ServerIsNotSeat0())
 break;
-if (xf86_platform_devices[j].pdev) {
-if (xf86IsPrimaryPlatform(xf86_platform_devices[j]))
-break;
-}
+
+if (xf86IsPrimaryPlatform(xf86_platform_devices[j]))
+break;
 }
 }
 

commit 484b881ecd7fbf5e1aabacfa96acb6f53475e32d
Author: Thierry Reding tred...@nvidia.com
Date:   Thu Feb 13 13:31:31 2014 +0100

xfree86: Fallback to first platform device as primary

When neither of the various bus implementations was able to find a
primary bus and device, fallback to using the platform bus as primary
bus and the first platform device as primary device.

Signed-off-by: Thierry Reding tred...@nvidia.com
Reviewed-by: Rob Clark robdcl...@gmail.com
Tested-by: Rob Clark robdcl...@gmail.com
Signed-off-by: Keith Packard kei...@keithp.com
(cherry picked from commit 2f0183222b4279266e6ef60b923738ff55f0afba)
[hdegoede: backport to 1.16 which doesn't have syspath directly in 
OdevAttributes]
Signed-off-by: Hans de Goede hdego...@redhat.com
Signed-off-by: Julien Cristau jcris...@debian.org

diff --git a/hw/xfree86/common/xf86Bus.c 

xorg-server: Changes to 'upstream-unstable'

2014-07-17 Thread Julien Cristau
 config/config.c|   32 
 configure.ac   |6 +--
 dix/getevents.c|   80 ++---
 hw/xfree86/common/xf86Config.c |2 -
 hw/xfree86/common/xf86DPMS.c   |2 -
 hw/xwin/Makefile.am|2 -
 include/hotplug.h  |4 +-
 os/log.c   |2 -
 8 files changed, 61 insertions(+), 69 deletions(-)

New commits:
commit 8b36e1ec8dd9f53e9f4e10422c2100844e9e549c
Author: Keith Packard kei...@keithp.com
Date:   Thu Jul 17 00:03:33 2014 -0700

Update to version 1.16.0

Signed-off-by: Keith Packard kei...@keithp.com

diff --git a/configure.ac b/configure.ac
index c214638..1c327fd 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.15.99.904, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE=2014-07-07
-RELEASE_NAME=Netarts Bay Oysters
+AC_INIT([xorg-server], 1.16.0, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE=2014-07-16
+RELEASE_NAME=Marionberry Pie
 AC_CONFIG_SRCDIR([Makefile.am])
 AC_CONFIG_MACRO_DIR([m4])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])

commit 4dbb641bb2d4037f107b58b31e80963dc8b72c0e
Author: Hans de Goede hdego...@redhat.com
Date:   Mon Jul 14 14:01:47 2014 +0200

config_odev_add_attribute*: Check for right attribute type

Don't allow setting string attributes to integers and vice versa.

Signed-off-by: Hans de Goede hdego...@redhat.com
Reviewed-by: Keith Packard kei...@keithp.com
Signed-off-by: Keith Packard kei...@keithp.com

diff --git a/config/config.c b/config/config.c
index 5514516..a26d835 100644
--- a/config/config.c
+++ b/config/config.c
@@ -172,12 +172,38 @@ config_odev_find_or_add_attribute(struct OdevAttributes 
*attribs, int attrib)
 return oa;
 }
 
+static int config_odev_get_attribute_type(int attrib)
+{
+switch (attrib) {
+case ODEV_ATTRIB_PATH:
+case ODEV_ATTRIB_SYSPATH:
+case ODEV_ATTRIB_BUSID:
+return ODEV_ATTRIB_STRING;
+case ODEV_ATTRIB_FD:
+case ODEV_ATTRIB_MAJOR:
+case ODEV_ATTRIB_MINOR:
+return ODEV_ATTRIB_INT;
+case ODEV_ATTRIB_DRIVER:
+return ODEV_ATTRIB_STRING;
+default:
+LogMessage(X_ERROR, Error %s called for unknown attribute %d\n,
+   __func__, attrib);
+return ODEV_ATTRIB_UNKNOWN;
+}
+}
+
 Bool
 config_odev_add_attribute(struct OdevAttributes *attribs, int attrib,
   const char *attrib_name)
 {
 struct OdevAttribute *oa;
 
+if (config_odev_get_attribute_type(attrib) != ODEV_ATTRIB_STRING) {
+LogMessage(X_ERROR, Error %s called for non string attrib %d\n,
+   __func__, attrib);
+return FALSE;
+}
+
 oa = config_odev_find_or_add_attribute(attribs, attrib);
 free(oa-attrib_name);
 oa-attrib_name = XNFstrdup(attrib_name);
@@ -191,6 +217,12 @@ config_odev_add_int_attribute(struct OdevAttributes 
*attribs, int attrib,
 {
 struct OdevAttribute *oa;
 
+if (config_odev_get_attribute_type(attrib) != ODEV_ATTRIB_INT) {
+LogMessage(X_ERROR, Error %s called for non integer attrib %d\n,
+   __func__, attrib);
+return FALSE;
+}
+
 oa = config_odev_find_or_add_attribute(attribs, attrib);
 oa-attrib_value = attrib_value;
 oa-attrib_type = ODEV_ATTRIB_INT;
diff --git a/include/hotplug.h b/include/hotplug.h
index b2c0d78..4c2fa97 100644
--- a/include/hotplug.h
+++ b/include/hotplug.h
@@ -32,7 +32,7 @@ extern _X_EXPORT void config_pre_init(void);
 extern _X_EXPORT void config_init(void);
 extern _X_EXPORT void config_fini(void);
 
-enum { ODEV_ATTRIB_STRING, ODEV_ATTRIB_INT };
+enum { ODEV_ATTRIB_UNKNOWN = -1, ODEV_ATTRIB_STRING = 0, ODEV_ATTRIB_INT };
 
 struct OdevAttribute {
 struct xorg_list member;

commit 25eca7ce35973577c8d85704c270f7fb53e6732e
Author: Hans de Goede hdego...@redhat.com
Date:   Mon Jul 14 14:01:46 2014 +0200

Fix ODEV_ATTRIB_DRIVER overlapping with ODEV_ATTRIB_FD

Looks like the value of ODEV_ATTRIB_DRIVER was not updated when the patch
adding it got rebased on top of a newer server version.

This fixes the xserver crashing when systemd-logind integration is used.

https://bugzilla.redhat.com/show_bug.cgi?id=1118540

Signed-off-by: Hans de Goede hdego...@redhat.com
Reviewed-by: Keith Packard kei...@keithp.com
Signed-off-by: Keith Packard kei...@keithp.com

diff --git a/include/hotplug.h b/include/hotplug.h
index c4268a0..b2c0d78 100644
--- a/include/hotplug.h
+++ b/include/hotplug.h
@@ -88,7 +88,7 @@ config_odev_free_attributes(struct OdevAttributes *attribs);
 /* Minor number of the device node pointed to by ODEV_ATTRIB_PATH */
 #define ODEV_ATTRIB_MINOR 6
 /* kernel driver name */
-#define ODEV_ATTRIB_DRIVER 4

xorg-server: Changes to 'upstream-unstable'

2014-07-08 Thread Julien Cristau
Rebased ref, commits from common ancestor:
commit 9308eafb7d303739b81634ed2ee0da88554fd429
Author: Keith Packard kei...@keithp.com
Date:   Mon Jul 7 16:28:26 2014 -0700

Update to version 1.15.99.904

One more RC to get the non-PCI patches tested before release

Signed-off-by: Keith Packard kei...@keithp.com

diff --git a/configure.ac b/configure.ac
index 2daa6be..c214638 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.15.99.903, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE=2014-06-04
-RELEASE_NAME=Strawberry Shortcake
+AC_INIT([xorg-server], 1.15.99.904, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE=2014-07-07
+RELEASE_NAME=Netarts Bay Oysters
 AC_CONFIG_SRCDIR([Makefile.am])
 AC_CONFIG_MACRO_DIR([m4])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])

commit b6cc489838dca0bcec7e9dbb4663b871e8cb7bc8
Author: Thierry Reding tred...@nvidia.com
Date:   Thu Feb 13 21:09:49 2014 +0100

xfree86: Make error message more readable

While at it also replace a tab by four spaces for consistency.

Reviewed-by: Aaron Plattner aplatt...@nvidia.com
Tested-By: Aaron Plattner aplatt...@nvidia.com
Signed-off-by: Thierry Reding tred...@nvidia.com
Reviewed-by: Rob Clark robdcl...@gmail.com
Tested-by: Rob Clark robdcl...@gmail.com
Signed-off-by: Keith Packard kei...@keithp.com

diff --git a/hw/xfree86/os-support/linux/lnx_platform.c 
b/hw/xfree86/os-support/linux/lnx_platform.c
index 0aaedab..d660761 100644
--- a/hw/xfree86/os-support/linux/lnx_platform.c
+++ b/hw/xfree86/os-support/linux/lnx_platform.c
@@ -58,8 +58,9 @@ get_drm_info(struct OdevAttributes *attribs, char *path, int 
delayed_index)
 
 err = drmSetInterfaceVersion(fd, sv);
 if (err) {
-ErrorF(setversion 1.4 failed: %s\n, strerror(-err));
-   goto out;
+xf86Msg(X_ERROR, %s: failed to set DRM interface version 1.4: %s\n,
+path, strerror(-err));
+goto out;
 }
 
 /* for a delayed probe we've already added the device */

commit eeefecd9df88920d4dca4100a84a135f7f53dd82
Author: Thierry Reding tred...@nvidia.com
Date:   Thu Feb 13 13:54:23 2014 +0100

xfree86: Support driver loading via OutputClass

Use the OutputClass configuration to determine what drivers to autoload
for a given device.

Reviewed-by: Aaron Plattner aplatt...@nvidia.com
Tested-By: Aaron Plattner aplatt...@nvidia.com
Signed-off-by: Thierry Reding tred...@nvidia.com
Tested-by: Rob Clark robdcl...@gmail.com
Signed-off-by: Keith Packard kei...@keithp.com

diff --git a/hw/xfree86/common/xf86platformBus.c 
b/hw/xfree86/common/xf86platformBus.c
index 672e2e5..eb1a3fb 100644
--- a/hw/xfree86/common/xf86platformBus.c
+++ b/hw/xfree86/common/xf86platformBus.c
@@ -47,6 +47,7 @@
 #include xf86Bus.h
 #include Pci.h
 #include xf86platformBus.h
+#include xf86Config.h
 
 #include randrstr.h
 int platformSlotClaimed;
@@ -199,6 +200,81 @@ xf86_check_platform_slot(const struct xf86_platform_device 
*pd)
 return TRUE;
 }
 
+static Bool
+MatchToken(const char *value, struct xorg_list *patterns,
+   int (*compare)(const char *, const char *))
+{
+const xf86MatchGroup *group;
+
+/* If there are no patterns, accept the match */
+if (xorg_list_is_empty(patterns))
+return TRUE;
+
+/* If there are patterns but no attribute, reject the match */
+if (!value)
+return FALSE;
+
+/*
+ * Otherwise, iterate the list of patterns ensuring each entry has a
+ * match. Each list entry is a separate Match line of the same type.
+ */
+xorg_list_for_each_entry(group, patterns, entry) {
+Bool match = FALSE;
+char *const *cur;
+
+for (cur = group-values; *cur; cur++) {
+if ((*compare)(value, *cur) == 0) {
+match = TRUE;
+break;
+}
+}
+
+if (!match)
+return FALSE;
+}
+
+/* All the entries in the list matched the attribute */
+return TRUE;
+}
+
+static Bool
+OutputClassMatches(const XF86ConfOutputClassPtr oclass, int index)
+{
+char *driver = xf86_get_platform_attrib(index, ODEV_ATTRIB_DRIVER);
+
+if (!MatchToken(driver, oclass-match_driver, strcmp))
+return FALSE;
+
+return TRUE;
+}
+
+static int
+xf86OutputClassDriverList(int index, char *matches[], int nmatches)
+{
+XF86ConfOutputClassPtr cl;
+int i = 0;
+
+if (nmatches == 0)
+return 0;
+
+for (cl = xf86configptr-conf_outputclass_lst; cl; cl = cl-list.next) {
+if (OutputClassMatches(cl, index)) {
+char *path = xf86_get_platform_attrib(index, ODEV_ATTRIB_PATH);
+
+xf86Msg(X_INFO, Applying OutputClass \%s\ to %s\n,
+cl-identifier, path);
+xf86Msg(X_NONE, 

xorg-server: Changes to 'upstream-unstable'

2014-04-14 Thread Maarten Lankhorst
 configure.ac|6 +++---
 glx/glxdricommon.c  |2 +-
 hw/kdrive/ephyr/hostx.c |6 ++
 3 files changed, 10 insertions(+), 4 deletions(-)

New commits:
commit 9182af8a09c326bb4b01d3645fb2936e93f02242
Author: Matt Dew mar...@osource.org
Date:   Sun Apr 13 20:55:40 2014 -0600

Bump version to 1.15.1

diff --git a/configure.ac b/configure.ac
index abd4604..b7b78a4 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.15.0.901, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE=2014-03-21
-RELEASE_NAME=Heart Candy-rc1
+AC_INIT([xorg-server], 1.15.1, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE=2014-04-13
+RELEASE_NAME=Heart Candy
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])
 AC_USE_SYSTEM_EXTENSIONS

commit eec04d76a39a7334de4e00ef9f0f6e44c92b3d91
Author: Eric Anholt e...@anholt.net
Date:   Thu Mar 6 18:50:07 2014 -0800

glx: Clear new FBConfig attributes to 0 by default.

The visualSelectGroup wasn't getting set (since our DRI drivers don't
use it), and and since it's the top priority in the sort order, you
got random sorting of your visuals unless malloc really returned you
new memory.  This manifested as Xephyr -glamor rendering to a
multisampled window on my system, which as you might guess was
slightly lower performance than expected.

Signed-off-by: Eric Anholt e...@anholt.net
Reviewed-by: Michel Dänzer michel.daen...@amd.com

diff --git a/glx/glxdricommon.c b/glx/glxdricommon.c
index fc90272..a97d027 100644
--- a/glx/glxdricommon.c
+++ b/glx/glxdricommon.c
@@ -132,7 +132,7 @@ createModeFromConfig(const __DRIcoreExtension * core,
 unsigned int attrib, value;
 int i;
 
-config = malloc(sizeof *config);
+config = calloc(1, sizeof *config);
 
 config-driConfig = driConfig;
 

commit d6268c25a8d33241d817977a84f127f8ef0cb9ee
Author: Julien Cristau jcris...@debian.org
Date:   Wed Mar 26 23:24:20 2014 +0100

Xephyr: restore initial window resize lost in xcb conversion

The XResizeWindow call wasn't replaced by the xcb equivalent, so we
were no longer setting the initial window size, only wm size hints.

Regression from commit a2b73da Xephyr: start converting hostx.c over to
xcb

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=74849

Signed-off-by: Julien Cristau jcris...@debian.org
Reported-by: Laércio de Sousa lbsous...@gmail.com
Tested-by: Jon TURNEY jon.tur...@dronecode.org.uk
Reviewed-by: Jon TURNEY jon.tur...@dronecode.org.uk
Signed-off-by: Keith Packard kei...@keithp.com

diff --git a/hw/kdrive/ephyr/hostx.c b/hw/kdrive/ephyr/hostx.c
index 3e01a47..57e7dc2 100644
--- a/hw/kdrive/ephyr/hostx.c
+++ b/hw/kdrive/ephyr/hostx.c
@@ -695,6 +695,12 @@ hostx_screen_init(KdScreenInfo *screen,
 malloc(scrpriv-ximg-stride * buffer_height);
 }
 
+{
+uint32_t mask = XCB_CONFIG_WINDOW_WIDTH | XCB_CONFIG_WINDOW_HEIGHT;
+uint32_t values[2] = {width, height};
+xcb_configure_window(HostX.conn, scrpriv-win, mask, values);
+}
+
 if (scrpriv-win_pre_existing == None  !EphyrWantResize) {
 /* Ask the WM to keep our size static */
 xcb_size_hints_t size_hints = {0};


-- 
To UNSUBSCRIBE, email to debian-x-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: https://lists.debian.org/e1wzewf-0002ft...@moszumanska.debian.org



xorg-server: Changes to 'upstream-unstable'

2013-09-22 Thread Julien Cristau
Rebased ref, commits from common ancestor:
commit 9acb64f54ee9dd2fe41afda159b919280850ad8e
Author: Matt Dew mar...@osource.org
Date:   Thu Sep 12 21:17:40 2013 -0600

bump version from 1.14.2.902 to 1.14.3

diff --git a/configure.ac b/configure.ac
index 68484db..9bc7c73 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.902, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE=2013-08-22
-RELEASE_NAME=Act semi-normal-rc2
+AC_INIT([xorg-server], 1.14.3, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE=2013-09-12
+RELEASE_NAME=September Rain
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])
 

commit af1c57152e10cfa55843e6330cffc6a3c8c517d3
Author: Chris Clayton chris2...@googlemail.com
Date:   Wed Sep 4 15:42:04 2013 +1000

kdrive: fix build error on gcc 4.8 for out-of-bounds array access

I'm getting a error building xorg-server-1.14.1.902 with thelatest snapshot
of gcc-4.8:

input.c:225:43: error: array subscript is above array bounds
[-Werror=array-bounds]

This is because kdNumInputFds can become equal to KD_MAX_INPUT_FDS in
KdRegisterFd(). This means that in KdUnregisterFd(), kdInputFds[j + 1] can
be beyond the end of the array.

Signed-off-by: Chris Clayton chris2...@googlemail.com
Reviewed-by: Keith Packard kei...@keithp.com
Signed-off-by: Peter Hutterer peter.hutte...@who-t.net

diff --git a/hw/kdrive/src/kinput.c b/hw/kdrive/src/kinput.c
index b1068bb..09aae44 100644
--- a/hw/kdrive/src/kinput.c
+++ b/hw/kdrive/src/kinput.c
@@ -221,7 +221,7 @@ KdUnregisterFd(void *closure, int fd, Bool do_close)
 if (do_close)
 close(kdInputFds[i].fd);
 kdNumInputFds--;
-for (j = i; j  kdNumInputFds; j++)
+for (j = i; j  (kdNumInputFds - 1); j++)
 kdInputFds[j] = kdInputFds[j + 1];
 break;
 }

commit 0e37fefea5e91dfdcd18ffd941daa7d05cc3180d
Author: Matt Dew mar...@osource.org
Date:   Thu Aug 22 17:43:51 2013 -0600

bump rev number from 1.14.2.901 to 1.14.2.902

diff --git a/configure.ac b/configure.ac
index 271e49d..68484db 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.901, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE=2013-07-25
-RELEASE_NAME=Act semi-normal-rc1
+AC_INIT([xorg-server], 1.14.2.902, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE=2013-08-22
+RELEASE_NAME=Act semi-normal-rc2
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])
 

commit 917c11ff97eb302d3c2d0565c8dd6d93101d6466
Author: Maarten Lankhorst maarten.lankho...@canonical.com
Date:   Tue Jul 30 15:31:24 2013 +0200

test/xi2: fix protocol-xiqueryversion test

The old code was broken and allowed setting client version = XIVersion,
this was fixed in the previous patch, but updating the value for XIVersion
broke the tests, so fix the tests too.

Signed-off-by: Maarten Lankhorst maarten.lankho...@canonical.com
Reviewed-by: Peter Hutterer peter.hutte...@who-t.net
Signed-off-by: Peter Hutterer peter.hutte...@who-t.net
(cherry picked from commit b6e5c4669e0db391966deb397e8c975ec7f0124d)

diff --git a/test/xi2/protocol-xiqueryversion.c 
b/test/xi2/protocol-xiqueryversion.c
index aff0237..ed75c89 100644
--- a/test/xi2/protocol-xiqueryversion.c
+++ b/test/xi2/protocol-xiqueryversion.c
@@ -44,8 +44,8 @@
 #include extinit.h/* for XInputExtensionInit */
 #include scrnintstr.h
 #include xiqueryversion.h
-
 #include protocol-common.h
+#include exglobals.h
 
 extern XExtensionVersion XIVersion;
 
@@ -54,8 +54,8 @@ struct test_data {
 int minor_client;
 int major_server;
 int minor_server;
-int major_cached;
-int minor_cached;
+int major_expected;
+int minor_expected;
 };
 
 static void
@@ -93,13 +93,8 @@ reply_XIQueryVersion_multiple(ClientPtr client, int len, 
char *data, void *closu
 reply_check_defaults(rep, len, XIQueryVersion);
 assert(rep-length == 0);
 
-if (versions-major_cached == -1) {
-versions-major_cached = rep-major_version;
-versions-minor_cached = rep-minor_version;
-}
-
-assert(versions-major_cached == rep-major_version);
-assert(versions-minor_cached == rep-minor_version);
+assert(versions-major_expected == rep-major_version);
+assert(versions-minor_expected == rep-minor_version);
 }
 
 /**
@@ -199,6 +194,7 @@ test_XIQueryVersion_multiple(void)
 {
 xXIQueryVersionReq request;
 ClientRec client;
+XIClientPtr pXIClient;
 struct test_data versions;
 int rc;
 
@@ -213,28 +209,26 @@ 

xorg-server: Changes to 'upstream-unstable'

2012-09-30 Thread Julien Cristau
 configure.ac |4 ++--
 hw/xquartz/bundle/Info.plist.cpp |4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

New commits:
commit dfc03ef3fda3572db590c2096272c990d434163e
Author: Jeremy Huddleston Sequoia jerem...@apple.com
Date:   Sun Aug 26 22:11:00 2012 -0700

configure.ac: Version bump to 1.12.4

Signed-off-by: Jeremy Huddleston Sequoia jerem...@apple.com

diff --git a/configure.ac b/configure.ac
index 28c9cf8..7c7e69e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,8 +26,8 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.60)
-AC_INIT([xorg-server], 1.12.3.902, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE=2012-08-19
+AC_INIT([xorg-server], 1.12.4, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE=2012-08-27
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])
 AM_MAINTAINER_MODE

commit 8995fcf260895ad288146b78d4c42b6f3b838d4f
Author: Jeremy Huddleston Sequoia jerem...@apple.com
Date:   Sun Aug 26 22:09:49 2012 -0700

XQuartz: Bump version to 2.7.3

Signed-off-by: Jeremy Huddleston Sequoia jerem...@apple.com

diff --git a/hw/xquartz/bundle/Info.plist.cpp b/hw/xquartz/bundle/Info.plist.cpp
index 4b6d9d1..460047c 100644
--- a/hw/xquartz/bundle/Info.plist.cpp
+++ b/hw/xquartz/bundle/Info.plist.cpp
@@ -19,9 +19,9 @@
keyCFBundlePackageType/key
stringAPPL/string
keyCFBundleShortVersionString/key
-   string2.7.2/string
+   string2.7.3/string
keyCFBundleVersion/key
-   string2.7.2/string
+   string2.7.3/string
keyCFBundleSignature/key
stringx11a/string
keyCSResourcesFileMapped/key


-- 
To UNSUBSCRIBE, email to debian-x-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/e1tigtj-0003jt...@vasks.debian.org



xorg-server: Changes to 'upstream-unstable'

2012-08-22 Thread Julien Cristau
 Makefile.am|7 
 Xext/panoramiX.c   |2 
 Xext/sync.c|   26 
 Xext/xf86bigfont.c |2 
 Xi/extinit.c   |   38 -
 Xi/xiproperty.c|  251 +++
 config/wscons.c|6 
 configure.ac   |4 
 dix/devices.c  |2 
 dix/events.c   |   27 
 dix/gc.c   |   10 
 dix/getevents.c|2 
 dix/tables.c   |  955 +
 dix/touch.c|4 
 fb/fbseg.c |   18 
 glx/glxcmds.c  |4 
 glx/glxdri2.c  |8 
 hw/kdrive/ephyr/ephyr.c|   80 +-
 hw/kdrive/ephyr/hostx.c|   36 -
 hw/kdrive/ephyr/hostx.h|   10 
 hw/kdrive/src/kdrive.c |   20 
 hw/kdrive/src/kinput.c |2 
 hw/xfree86/Makefile.am |2 
 hw/xfree86/common/xf86Module.h |2 
 hw/xfree86/dixmods/extmod/modinit.h|2 
 hw/xfree86/dixmods/extmod/xf86dga2.c   |   81 +-
 hw/xfree86/dixmods/extmod/xf86vmode.c  |   14 
 hw/xfree86/dri2/dri2.c |   15 
 hw/xfree86/dri2/dri2.h |7 
 hw/xfree86/loader/loader.c |   19 
 hw/xfree86/loader/loader.h |1 
 hw/xfree86/loader/loadmod.c|2 
 hw/xfree86/modes/xf86Crtc.c|8 
 hw/xfree86/modes/xf86DisplayIDModes.c  |  171 ++---
 hw/xfree86/modes/xf86EdidModes.c   |  122 +--
 hw/xfree86/os-support/bsd/bsd_apm.c|   26 
 hw/xfree86/os-support/bsd/bsd_kqueue_apm.c |   26 
 hw/xfree86/os-support/bus/Sbus.c   |   20 
 hw/xfree86/os-support/linux/lnx_apm.c  |   31 
 hw/xfree86/os-support/solaris/sun_apm.c|   26 
 hw/xfree86/parser/Device.c |2 
 hw/xfree86/parser/Files.c  |2 
 hw/xfree86/parser/Flags.c  |2 
 hw/xfree86/parser/Input.c  |2 
 hw/xfree86/parser/InputClass.c |2 
 hw/xfree86/parser/Layout.c |2 
 hw/xfree86/parser/Module.c |2 
 hw/xfree86/parser/Monitor.c|2 
 hw/xfree86/parser/Pointer.c|2 
 hw/xfree86/parser/Screen.c |2 
 hw/xfree86/parser/Vendor.c |2 
 hw/xfree86/parser/Video.c  |2 
 hw/xfree86/parser/read.c   |2 
 hw/xfree86/parser/scan.c   |2 
 hw/xfree86/parser/write.c  |2 
 hw/xfree86/ramdac/xf86Cursor.c |   31 
 hw/xquartz/console_redirect.c  |   28 
 hw/xquartz/pseudoramiX.c   |   21 
 hw/xquartz/pseudoramiX.h   |2 
 hw/xquartz/xpr/xprEvent.c  |   22 
 include/list.h |2 
 mi/miexpose.c  |2 
 os/connection.c|2 
 os/io.c|6 
 os/utils.c |4 
 randr/randr.c  |3 
 randr/rrcrtc.c |   12 
 randr/rrinfo.c |7 
 randr/rrmode.c |4 
 randr/rroutput.c   |   12 
 randr/rrscreen.c   |6 
 render/filter.c|5 
 render/render.c|4 
 test/xtest.c   |2 
 xfixes/cursor.c|7 
 xfixes/region.c|3 
 xkb/xkbAccessX.c   |   10 
 77 files changed, 1297 insertions(+), 1017 deletions(-)

New commits:
commit a6d7400507f220d6f98b853def7904586fb1eadd
Author: Jeremy Huddleston Sequoia jerem...@apple.com
Date:   Sun Aug 19 09:07:33 2012 -0700

configure.ac: Version bump to 1.12.3.902 (1.12.4 RC2)

Signed-off-by: Jeremy Huddleston Sequoia jerem...@apple.com

diff --git a/configure.ac b/configure.ac
index aece819..28c9cf8 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,8 +26,8 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.60)
-AC_INIT([xorg-server], 1.12.3.901, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE=2012-08-03
+AC_INIT([xorg-server], 1.12.3.902, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE=2012-08-19
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])
 AM_MAINTAINER_MODE

commit 

xorg-server: Changes to 'upstream-unstable'

2012-07-18 Thread Julien Cristau
 Xi/extinit.c |2 
 Xi/stubs.c   |1 
 Xi/xiquerydevice.c   |2 
 configure.ac |4 -
 dix/getevents.c  |   67 +++
 dix/touch.c  |7 ++
 hw/xfree86/common/xf86Config.c   |1 
 hw/xfree86/common/xf86Init.c |1 
 hw/xfree86/common/xf86Xinput.c   |   94 ---
 hw/xfree86/common/xf86sbusBus.c  |8 ++-
 hw/xfree86/doc/ddxDesign.xml |   25 --
 hw/xfree86/modes/xf86EdidModes.c |   13 -
 hw/xfree86/utils/man/cvt.man |4 -
 hw/xquartz/X11Application.m  |   24 ++---
 hw/xquartz/console_redirect.c|   14 +
 hw/xquartz/quartz.c  |6 ++
 randr/randr.c|2 
 xkb/XKBMAlloc.c  |6 +-
 xkb/xkbAccessX.c |9 ++-
 19 files changed, 212 insertions(+), 78 deletions(-)

New commits:
commit 60e0d205666c1fc0c818b9430c1e20428c9d3808
Author: Peter Hutterer peter.hutte...@who-t.net
Date:   Mon Jul 9 10:44:01 2012 +1000

configure.ac: Bump to Version 1.12.3

Signed-off-by: Peter Hutterer peter.hutte...@who-t.net

diff --git a/configure.ac b/configure.ac
index d36bcd1..c8dee90 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,8 +26,8 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.60)
-AC_INIT([xorg-server], 1.12.2.902, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE=2012-07-02
+AC_INIT([xorg-server], 1.12.3, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE=2012-07-09
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])
 AM_MAINTAINER_MODE

commit 738e55ebbdf516a45b95761b815bed4e697dc726
Author: Torsten Kaiser just.for.l...@googlemail.com
Date:   Fri Jul 6 12:10:25 2012 -0700

xfree86: EDID Est III parsing skips some modes

This loop needs to count from 7 to 0, not only from 7 to 1.
The current code always skips the modes {1152, 864, 75, 0}, {1280, 1024, 
85, 0},
{1400, 1050, 75, 0}, {1600, 1200, 70, 0} and {1920, 1200, 60, 0}.

Signed-off-by: Torsten Kaiser x...@ariolc.dyndns.org
Reviewed-by: Adam Jackson a...@redhat.com
Signed-off-by: Keith Packard kei...@keithp.com
(cherry picked from commit 7c9d8cbd368cac53e7aed9308292614337db3be2)

diff --git a/hw/xfree86/modes/xf86EdidModes.c b/hw/xfree86/modes/xf86EdidModes.c
index 47c169c..258ada5 100644
--- a/hw/xfree86/modes/xf86EdidModes.c
+++ b/hw/xfree86/modes/xf86EdidModes.c
@@ -738,7 +738,7 @@ DDCModesFromEstIII(unsigned char *est)
 int i, j, m;
 
 for (i = 0; i  6; i++) {
-for (j = 7; j  0; j--) {
+for (j = 7; j = 0; j--) {
 if (est[i]  (1  j)) {
 m = (i * 8) + (7 - j);
 if (EstIIIModes[m].w)

commit f27fcb81c4a30cec899628e4bb3e300edbcebe4b
Author: Torsten Kaiser just.for.l...@googlemail.com
Date:   Fri Jul 6 12:06:13 2012 -0700

xfree86: EDID Est III parsing can walk off end of array

Using -O3 gcc notes that m could reach beyound the end of the EstIIIModes 
array,
if the last bits of the 11s byte where set.
Fix this, by extending the array to cover all possible bits from est.

https://bugs.freedesktop.org/show_bug.cgi?id=45623

Signed-off-by: Torsten Kaiser x...@ariolc.dyndns.org
Reviewed-by: Adam Jackson a...@redhat.com
Signed-off-by: Keith Packard kei...@keithp.com
(cherry picked from commit 0b3abacb6430e6593c4358420ba457d8149bd32b)

diff --git a/hw/xfree86/modes/xf86EdidModes.c b/hw/xfree86/modes/xf86EdidModes.c
index 8aa82d1..47c169c 100644
--- a/hw/xfree86/modes/xf86EdidModes.c
+++ b/hw/xfree86/modes/xf86EdidModes.c
@@ -723,7 +723,13 @@ static const struct {
 1920, 1200, 75, 0}, {
 1920, 1200, 85, 0}, {
 1920, 1440, 60, 0}, {
-1920, 1440, 75, 0},};
+1920, 1440, 75, 0},
+/* fill up last byte */
+{
+0,0,0,0}, {
+0,0,0,0}, {
+0,0,0,0}, {
+0,0,0,0}, };
 
 static DisplayModePtr
 DDCModesFromEstIII(unsigned char *est)
@@ -735,7 +741,8 @@ DDCModesFromEstIII(unsigned char *est)
 for (j = 7; j  0; j--) {
 if (est[i]  (1  j)) {
 m = (i * 8) + (7 - j);
-modes = xf86ModesAdd(modes,
+if (EstIIIModes[m].w)
+modes = xf86ModesAdd(modes,
  FindDMTMode(EstIIIModes[m].w,
  EstIIIModes[m].h,
  EstIIIModes[m].r,

commit e4497cd002ffb59cb7cf9df69d47ccb62ab55bf4
Author: Peter Hutterer peter.hutte...@who-t.net
Date:   Fri Jun 15 10:00:51 2012 +1000

xfree86: always enable SIGIO on OsVendorInit (#50957)

Drivers call xf86InstallSIGIOHandler() for their fd on DEVICE_ON. That
function does not actually enable the signal if it was blocked 

xorg-server: Changes to 'upstream-unstable'

2012-05-20 Thread Cyril Brulebois
 Xi/xiquerypointer.c   |   25 -
 configure.ac  |4 
 dix/devices.c |2 
 dix/dispatch.c|4 
 dix/getevents.c   |2 
 hw/dmx/dmxlog.c   |   13 
 hw/dmx/dmxlog.h   |   19 
 hw/xfree86/dixmods/extmod/xf86vmode.c |  826 +++---
 include/Xprintf.h |   12 
 os/log.c  |  105 ++--
 os/xprintf.c  |   44 +
 11 files changed, 630 insertions(+), 426 deletions(-)

New commits:
commit 4a2b8eebd1e93a8a0d003e9f5a594430eff08dad
Author: Jeremy Huddleston jerem...@apple.com
Date:   Sat May 19 22:11:19 2012 -0700

configure.ac: Version bump to 1.12.1.902 (1.12.2 RC2)

Signed-off-by: Jeremy Huddleston jerem...@apple.com

diff --git a/configure.ac b/configure.ac
index e6c434e..5e38d50 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,8 +26,8 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.60)
-AC_INIT([xorg-server], 1.12.1.901, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE=2012-05-06
+AC_INIT([xorg-server], 1.12.1.902, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE=2012-05-19
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])
 AM_MAINTAINER_MODE

commit dab90b60f3b2ebfd8df4fa761f3f34859250f4db
Author: Chase Douglas chase.doug...@canonical.com
Date:   Tue May 1 10:21:12 2012 -0700

Report touch emulated buttons in XIQueryPointer for XI 2.1 and earlier

XInput 2.1 and earlier clients do not know about touches. We must report
touch emulated button presses for these clients. For later clients, we
only report true pointer button presses.

Signed-off-by: Chase Douglas chase.doug...@canonical.com
Reviewed-by: Peter Hutterer peter.hutte...@who-t.net
Signed-off-by: Peter Hutterer peter.hutte...@who-t.net
(cherry picked from commit ee542b85590814ee25369babce1ad14feeb137af)

diff --git a/Xi/xiquerypointer.c b/Xi/xiquerypointer.c
index ba99752..169436e 100644
--- a/Xi/xiquerypointer.c
+++ b/Xi/xiquerypointer.c
@@ -79,10 +79,21 @@ ProcXIQueryPointer(ClientPtr client)
 XkbStatePtr state;
 char *buttons = NULL;
 int buttons_size = 0;   /* size of buttons array */
+XIClientPtr xi_client;
+Bool have_xi22 = FALSE;
 
 REQUEST(xXIQueryPointerReq);
 REQUEST_SIZE_MATCH(xXIQueryPointerReq);
 
+/* Check if client is compliant with XInput 2.2 or later. Earlier clients
+ * do not know about touches, so we must report emulated button presses. 
2.2
+ * and later clients are aware of touches, so we don't include emulated
+ * button presses in the reply. */
+xi_client = dixLookupPrivate(client-devPrivates, XIClientPrivateKey);
+if (version_compare(xi_client-major_version,
+xi_client-minor_version, 2, 2) = 0)
+have_xi22 = TRUE;
+
 rc = dixLookupDevice(pDev, stuff-deviceid, client, DixReadAccess);
 if (rc != Success) {
 client-errorValue = stuff-deviceid;
@@ -145,6 +156,9 @@ ProcXIQueryPointer(ClientPtr client)
 for (i = 1; i  pDev-button-numButtons; i++)
 if (BitIsOn(pDev-button-down, i))
 SetBit(buttons, pDev-button-map[i]);
+
+if (!have_xi22  pDev-touch  pDev-touch-buttonsDown  0)
+SetBit(buttons, pDev-button-map[1]);
 }
 else
 rep.buttons_len = 0;

commit 04474fc6a4c21a06c1a65c7afcbc4e0a27e3d0f7
Author: Chase Douglas chase.doug...@canonical.com
Date:   Tue May 1 10:21:11 2012 -0700

Report logical button state in ProcXIQueryPointer

Physical button state is usually meaningless to an X client.

Signed-off-by: Chase Douglas chase.doug...@canonical.com
Signed-off-by: Peter Hutterer peter.hutte...@who-t.net
Reviewed-by: Peter Hutterer peter.hutte...@who-t.net
(cherry picked from commit 1e7b500a8e1d79b91a4e857a2da06194efe8cf69)

diff --git a/Xi/xiquerypointer.c b/Xi/xiquerypointer.c
index a2e7442..ba99752 100644
--- a/Xi/xiquerypointer.c
+++ b/Xi/xiquerypointer.c
@@ -132,7 +132,7 @@ ProcXIQueryPointer(ClientPtr client)
 }
 
 if (pDev-button) {
-int i, down;
+int i;
 
 rep.buttons_len =
 bytes_to_int32(bits_to_bytes(pDev-button-numButtons));
@@ -142,14 +142,9 @@ ProcXIQueryPointer(ClientPtr client)
 if (!buttons)
 return BadAlloc;
 
-down = pDev-button-buttonsDown;
-
-for (i = 0; i  pDev-button-numButtons  down; i++) {
-if (BitIsOn(pDev-button-down, i)) {
-SetBit(buttons, i);
-down--;
-}
-}
+for (i = 1; i  pDev-button-numButtons; i++)
+if (BitIsOn(pDev-button-down, i))
+SetBit(buttons, pDev-button-map[i]);
 }
 else
 

xorg-server: Changes to 'upstream-unstable'

2012-05-06 Thread Cyril Brulebois
 Xi/exevents.c |  174 
 dix/devices.c |2 
 dix/dispatch.c|5 
 dix/events.c  |   60 +++--
 dix/getevents.c   |3 
 dix/touch.c   |  122 +++
 glx/glapi_gentable.c  |2 
 hw/xfree86/modes/xf86Rotate.c |   11 +
 hw/xquartz/X11Application.m   |  154 +---
 hw/xquartz/console_redirect.c |2 
 hw/xquartz/darwin.c   |   57 +
 hw/xquartz/darwinEvents.c |  210 ++
 hw/xquartz/darwinEvents.h |   13 --
 hw/xquartz/mach-startup/bundle-main.c |2 
 hw/xquartz/xpr/xprFrame.c |2 
 include/input.h   |6 
 os/WaitFor.c  |   18 ++
 xkb/xkbActions.c  |   26 +++-
 18 files changed, 594 insertions(+), 275 deletions(-)

New commits:
commit 22a1953c4a2747d637bb926034f11134809b8d06
Author: Jeremy Huddleston jerem...@apple.com
Date:   Thu Apr 26 21:17:54 2012 -0700

XQuartz: Make sure we tell startx the correct server binary to use in our 
fallback path

With multiple servers installed, we can't be certain if X is Xorg or Xquartz

Signed-off-by: Jeremy Huddleston jerem...@apple.com
(cherry picked from commit 93d6ba5b711cbd3f502d83e54c9739856d2e6f2a)

diff --git a/hw/xquartz/mach-startup/bundle-main.c 
b/hw/xquartz/mach-startup/bundle-main.c
index d1ad6f7..cabdf1e 100644
--- a/hw/xquartz/mach-startup/bundle-main.c
+++ b/hw/xquartz/mach-startup/bundle-main.c
@@ -78,7 +78,7 @@ FatalError(const char *f, ...) _X_ATTRIBUTE_PRINTF(1, 2) 
_X_NORETURN;
 extern int noPanoramiXExtension;
 
 #define DEFAULT_CLIENT X11BINDIR /xterm
-#define DEFAULT_STARTX X11BINDIR /startx
+#define DEFAULT_STARTX X11BINDIR /startx --  X11BINDIR /Xquartz
 #define DEFAULT_SHELL  /bin/sh
 
 #ifndef BUILD_DATE

commit 90299556db24543bb7365e8c2897deca3aa219e7
Author: Peter Hutterer peter.hutte...@who-t.net
Date:   Mon Apr 30 10:01:48 2012 +1000

dix: when disabling a device, release all buttons and keys

A suspend-induced device disable may happen before the device gets to see
the button release event. On resume, the server's internal state still has
some buttons pressed, causing inconsistent behaviour.

Force the release and the matching events to be sent to the client.

Signed-off-by: Peter Hutterer peter.hutte...@who-t.net
Reviewed-by: Chase Douglas chase.doug...@canonical.com
(cherry picked from commit f3410b97cf9b48a47bee3d15d232f8a88e75f4ef)

Conflicts:

dix/devices.c

diff --git a/dix/devices.c b/dix/devices.c
index 0125504..d0e99bd 100644
--- a/dix/devices.c
+++ b/dix/devices.c
@@ -432,6 +432,8 @@ DisableDevice(DeviceIntPtr dev, BOOL sendevent)
 if (*prev != dev)
 return FALSE;
 
+ReleaseButtonsAndKeys(dev);
+
 /* float attached devices */
 if (IsMaster(dev)) {
 for (other = inputInfo.devices; other; other = other-next) {

commit b53cdf4c53f0787ed41281278877e0405fcb2674
Author: Peter Hutterer peter.hutte...@who-t.net
Date:   Fri Apr 27 16:31:17 2012 +1000

dix: don't emulate scroll events for non-existing axes (#47281)

Test case:
- create a device with REL_HWHEEL and ABS_X and ABS_Y. evdev 2.7.0 will set
  that up as device with 1 relative axis
- move pointer to VGA1
- xrandr --output VGA1 --off

Warps the pointer to the new spot and calls GPE with the x/y mask bits set.
When running through the loop to check for scroll event, this overruns the
axes and may try to emulate scroll events based on random garbage in the
memory. If that memory contained non-zero for the scroll type but near-zero
for the increment field, the server would hang in an infinite loop.

This was the trigger for this suggested, never-merged, patch here:
http://patchwork.freedesktop.org/patch/9543/

X.Org Bug 47281 http://bugs.freedesktop.org/show_bug.cgi?id=47281

Signed-off-by: Peter Hutterer peter.hutte...@who-t.net
Reviewed-by: Chase Douglas chase.doug...@canonical.com
(cherry picked from commit af88b43f9e604157b74270d609c08bdfa256a792)

diff --git a/dix/getevents.c b/dix/getevents.c
index fa85fe7..4e0af45 100644
--- a/dix/getevents.c
+++ b/dix/getevents.c
@@ -1574,6 +1574,9 @@ GetPointerEvents(InternalEvent *events, DeviceIntPtr 
pDev, int type,
 /* Now turn the smooth-scrolling axes back into emulated button presses
  * for legacy clients, based on the integer delta between before and now */
 for (i = 0; i  valuator_mask_size(mask); i++) {
+if (i = pDev-valuator-numAxes)
+break;
+
 if (!valuator_mask_isset(mask, i))
 continue;
 

commit 9ddf9e2388f9ac5f4c325304ab0c59c1fd5e2024
Author: Peter Hutterer 

xorg-server: Changes to 'upstream-unstable'

2012-04-30 Thread Cyril Brulebois
Rebased ref, commits from common ancestor:
commit 38e73f7fc29fe8e9defa8a0516a50ac3a84e10c2
Author: Jeremy Huddleston jerem...@apple.com
Date:   Fri Apr 13 15:44:08 2012 -0700

configure.ac: Bump to 1.12.1

Signed-off-by: Jeremy Huddleston jerem...@apple.com

diff --git a/configure.ac b/configure.ac
index b26da71..a12783c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,8 +26,8 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.60)
-AC_INIT([xorg-server], 1.12.0.902, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE=2012-04-09
+AC_INIT([xorg-server], 1.12.1, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE=2012-04-13
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])
 AM_MAINTAINER_MODE

commit d603515dbfef94ec9cf7f5538815a954511e9e70
Author: Jeremy Huddleston jerem...@apple.com
Date:   Mon Apr 9 19:37:31 2012 -0700

configure.ac: Bump to 1.12.0.902 (1.12.1 RC2)

Signed-off-by: Jeremy Huddleston jerem...@apple.com

diff --git a/configure.ac b/configure.ac
index cc21fd8..b26da71 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,8 +26,8 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.60)
-AC_INIT([xorg-server], 1.12.0.901, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE=2012-03-30
+AC_INIT([xorg-server], 1.12.0.902, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE=2012-04-09
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])
 AM_MAINTAINER_MODE

commit 7e62bc31c65aedcdf55cd7dc02b349b6b5c0812c
Author: Jeremy Huddleston jerem...@apple.com
Date:   Sat Apr 7 15:26:53 2012 -0700

test: Fix make dist

I don't know why this fixes the problem with make dist, but it does...

Signed-off-by: Jeremy Huddleston jerem...@apple.com

diff --git a/test/Makefile.am b/test/Makefile.am
index eb61470..32be00d 100644
--- a/test/Makefile.am
+++ b/test/Makefile.am
@@ -53,8 +53,6 @@ libxservertest_la_LIBADD += \
 $(top_builddir)/hw/xfree86/dixmods/libxorgxkb.la \
 @XORG_LIBS@
 
-EXTRA_DIST = ddxstubs.c
-
 else
 nodist_libxservertest_la_SOURCES = \
 ddxstubs.c \
@@ -110,3 +108,6 @@ endif
 
 libxservertest_la_DEPENDENCIES = $(libxservertest_la_LIBADD)
 endif
+
+EXTRA_DIST = ddxstubs.c
+

commit ad89533327919223204021738dd108d7dd814e8c
Author: Jeremy Huddleston jerem...@apple.com
Date:   Mon Apr 9 19:36:04 2012 -0700

Revert xfree86: workaround crash on close

This reverts commit b704d9146336c3044be2be7ae38ce2c5b5a47f86.

This was causing some regressions.  Reverting as discussed on xorg-devel.

diff --git a/hw/xfree86/modes/xf86Rotate.c b/hw/xfree86/modes/xf86Rotate.c
index f9602fa..85d7557 100644
--- a/hw/xfree86/modes/xf86Rotate.c
+++ b/hw/xfree86/modes/xf86Rotate.c
@@ -272,7 +272,6 @@ xf86RotateDestroy(xf86CrtcPtr crtc)
 ScrnInfoPtr pScrn = crtc-scrn;
 ScreenPtr pScreen = pScrn-pScreen;
 xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(pScrn);
-DrawablePtr screenDrawable = pScreen-root-drawable;
 int c;
 
 /* Free memory from rotation */
@@ -290,7 +289,7 @@ xf86RotateDestroy(xf86CrtcPtr crtc)
 /*
  * Clean up damage structures when no crtcs are rotated
  */
-if (screenDrawable  xf86_config-rotation_damage) {
+if (xf86_config-rotation_damage) {
 /* Free damage structure */
 if (xf86_config-rotation_damage_registered) {
 DamageUnregister(pScreen-root-drawable,

commit 259aa5a69b69aa72be3fb7402b68560f9a6b05d6
Author: Chase Douglas chase.doug...@canonical.com
Date:   Thu Mar 29 18:06:03 2012 -0700

Implement passive touch ungrabbing

Whoops. Forgot to implement this. The code currently generates an error
due to the unhandled grab type.

X.Org Bug 48069 https://bugs.freedesktop.org/show_bug.cgi?id=48069

Signed-off-by: Chase Douglas chase.doug...@canonical.com
Reviewed-by: Peter Hutterer peter.hutte...@who-t.net
Signed-off-by: Keith Packard kei...@keithp.com
(cherry picked from commit 1110facdfeb95b1ad47d03c0ca3d73933b86dbd6)

diff --git a/Xi/xipassivegrab.c b/Xi/xipassivegrab.c
index 8a1c599..7130328 100644
--- a/Xi/xipassivegrab.c
+++ b/Xi/xipassivegrab.c
@@ -290,13 +290,15 @@ ProcXIPassiveUngrabDevice(ClientPtr client)
 if (stuff-grab_type != XIGrabtypeButton 
 stuff-grab_type != XIGrabtypeKeycode 
 stuff-grab_type != XIGrabtypeEnter 
-stuff-grab_type != XIGrabtypeFocusIn) {
+stuff-grab_type != XIGrabtypeFocusIn 
+stuff-grab_type != XIGrabtypeTouchBegin) {
 client-errorValue = stuff-grab_type;
 return BadValue;
 }
 
 if ((stuff-grab_type == XIGrabtypeEnter ||
- stuff-grab_type == XIGrabtypeFocusIn)  stuff-detail != 0) {
+ stuff-grab_type == XIGrabtypeFocusIn ||
+ 

xorg-server: Changes to 'upstream-unstable'

2012-03-04 Thread Cyril Brulebois
 Xext/xace.c  |4 +
 configure.ac |   11 ++-
 dix/dispatch.c   |   14 ++--
 dix/dixutils.c   |7 --
 dix/events.c |2 
 hw/xfree86/common/xf86Xinput.c   |   11 +--
 hw/xquartz/bundle/Info.plist.cpp |8 +-
 mi/mibitblt.c|2 
 os/backtrace.c   |6 +
 os/client.c  |  118 +--
 render/animcur.c |3 
 11 files changed, 146 insertions(+), 40 deletions(-)

New commits:
commit e597f0119cd69b6d9edf86d06d941468f90d8e6d
Author: Jeremy Huddleston jerem...@apple.com
Date:   Fri Jan 27 21:07:17 2012 -0800

configure.ac: 1.11.4

Signed-off-by: Jeremy Huddleston jerem...@apple.com

diff --git a/configure.ac b/configure.ac
index cf37d1a..7a13c4f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,8 +26,8 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.57)
-AC_INIT([xorg-server], 1.11.3.902, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE=2012-01-20
+AC_INIT([xorg-server], 1.11.4, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE=2012-01-27
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])
 AM_MAINTAINER_MODE

commit 6c491463ee7a3637c8aae7ddae9625b36b792078
Author: Jeremy Huddleston jerem...@apple.com
Date:   Fri Jan 20 23:54:58 2012 -0800

1.11.3.902 (1.11.4 RC2)

Signed-off-by: Jeremy Huddleston jerem...@apple.com

diff --git a/configure.ac b/configure.ac
index 65fbc8c..cf37d1a 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,8 +26,8 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.57)
-AC_INIT([xorg-server], 1.11.3.901, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE=2012-01-06
+AC_INIT([xorg-server], 1.11.3.902, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE=2012-01-20
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])
 AM_MAINTAINER_MODE

commit b747a91485184649c05aba6fa10734f70e926032
Author: Jeremy Huddleston jerem...@apple.com
Date:   Wed Jan 18 11:47:21 2012 -0800

XQuartz: Bump bundle version to 2.7.1

Signed-off-by: Jeremy Huddleston jerem...@apple.com

diff --git a/hw/xquartz/bundle/Info.plist.cpp b/hw/xquartz/bundle/Info.plist.cpp
index a4b8e19..60251f7 100644
--- a/hw/xquartz/bundle/Info.plist.cpp
+++ b/hw/xquartz/bundle/Info.plist.cpp
@@ -19,9 +19,9 @@
keyCFBundlePackageType/key
stringAPPL/string
keyCFBundleShortVersionString/key
-   string2.7.0/string
+   string2.7.1/string
keyCFBundleVersion/key
-   string2.7.0/string
+   string2.7.1/string
keyCFBundleSignature/key
stringx11a/string
keyCSResourcesFileMapped/key
@@ -37,9 +37,9 @@
keyLSApplicationCategoryType/key
stringpublic.app-category.utilities/string
keyNSHumanReadableCopyright/key
-   string© 2003-2011 Apple Inc.
+   string© 2003-2012 Apple Inc.
 © 2003 XFree86 Project, Inc.
-© 2003-2011 X.org Foundation, Inc.
+© 2003-2012 X.org Foundation, Inc.
 /string
keyNSMainNibFile/key
stringmain/string

commit a1ed67fa0551ee2b39d002d3b786a2017b37c7ac
Author: Peter Hutterer peter.hutte...@who-t.net
Date:   Fri Jan 6 13:20:45 2012 +1000

render: don't bother with animated cursors on floating slaves (#39989)

X.Org Bug 39989 http://bugs.freedesktop.org/show_bug.cgi?id=39989

Signed-off-by: Peter Hutterer peter.hutte...@who-t.net
Reviewed-by: Jeremy Huddleston jerem...@apple.com
(cherry picked from commit bbb6b8c834e0e1491ca14403b5d0840dd14380d3)

diff --git a/render/animcur.c b/render/animcur.c
index 31cbab9..8d4a9c2 100644
--- a/render/animcur.c
+++ b/render/animcur.c
@@ -208,6 +208,9 @@ AnimCurDisplayCursor (DeviceIntPtr pDev,
 AnimCurScreenPtras = GetAnimCurScreen(pScreen);
 Bool   ret;
 
+if (IsFloating(pDev))
+   return FALSE;
+
 Unwrap (as, pScreen, DisplayCursor);
 if (IsAnimCur(pCursor))
 {

commit f89c39e6c9e20ffc3c1ae228ee601c2ab9007ff4
Author: Peter Hutterer peter.hutte...@who-t.net
Date:   Mon Jan 9 15:04:10 2012 +1000

dix: Update pointer limits for floating devices too (#43635)

When the screen is restructured, the pointer limits need to be reset for
floating slave devices as well, not just for master pointers. Only skip
devices that don't have a cursor (attached slaves and keyboard)

Bug reproducer: float an absolute slave device, rotate the screen - the
device is now confined to a section of the screen only.

X.Org Bug 43635 http://bugs.freedesktop.org/show_bug.cgi?id=43635

Signed-off-by: Peter Hutterer 

xorg-server: Changes to 'upstream-unstable'

2012-01-07 Thread Cyril Brulebois
 Xext/security.c |4 ---
 Xext/shm.c  |2 -
 Xext/xselinux_ext.c |6 
 Xext/xselinux_hooks.c   |4 +--
 Xi/exevents.c   |2 -
 Xi/xichangehierarchy.c  |   15 +++
 Xi/xipassivegrab.c  |   10 ++-
 configure.ac|   12 +++--
 dix/dispatch.c  |   23 ++
 dix/extension.c |   14 ---
 hw/dmx/examples/Makefile.am |   56 ++--
 hw/kdrive/linux/keyboard.c  |6 ++--
 hw/kdrive/linux/ms.c|4 +--
 hw/kdrive/linux/ps2.c   |4 +--
 include/dixstruct.h |1 
 include/extension.h |2 -
 record/record.c |8 ++
 xfixes/cursor.c |4 +--
 18 files changed, 87 insertions(+), 90 deletions(-)

New commits:
commit cea9f9f273cb525cb5daa2d2819d3f635582cb24
Author: Jeremy Huddleston jerem...@apple.com
Date:   Fri Jan 6 22:01:03 2012 -0800

configure.ac: 1.11.3.901 (1.11.4 RC1)

Signed-off-by: Jeremy Huddleston jerem...@apple.com

diff --git a/configure.ac b/configure.ac
index a871529..fdaa583 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,8 +26,8 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.57)
-AC_INIT([xorg-server], 1.11.3, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE=2011-12-16
+AC_INIT([xorg-server], 1.11.3.901, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE=2012-01-06
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])
 AM_MAINTAINER_MODE

commit b15be8547d4d204f3e498f52d86713a76766e871
Author: Jeremy Huddleston jerem...@apple.com
Date:   Fri Jan 6 22:12:14 2012 -0800

Xi: Fix mishandled git merge

Signed-off-by: Jeremy Huddleston jerem...@apple.com

diff --git a/Xi/xichangehierarchy.c b/Xi/xichangehierarchy.c
index 4a15d5c..3facadd 100644
--- a/Xi/xichangehierarchy.c
+++ b/Xi/xichangehierarchy.c
@@ -216,19 +216,6 @@ disable_clientpointer(DeviceIntPtr dev)
 }
 
 static int
-disable_clientpointer(DeviceIntPtr dev)
-{
-int i;
-
-for (i = 0; i  currentMaxClients; i++)
-{
-ClientPtr client = clients[i];
-if (client  client-clientPtr == dev)
-client-clientPtr = NULL;
-}
-}
-
-static int
 remove_master(ClientPtr client, xXIRemoveMasterInfo *r,
   int flags[MAXDEVICES])
 {

commit 4e4bb319a4f9510277557f65676948cd1db10e93
Author: Carlos Garnacho carl...@gnome.org
Date:   Tue Dec 13 15:41:23 2011 +0100

Xi: assign correct grab_mode/other_device_mode in XI2 passive grabs

CreateGrab() expects the keyboard mode to be stored in grab_mode, and the
pointer mode in other_device_mode, so respect this in passive XI2 grabs,
and switch modes if needed.

Signed-off-by: Carlos Garnacho carl...@gnome.org
Signed-off-by: Peter Hutterer peter.hutte...@who-t.net
Reviewed-by: Chase Douglas chase.doug...@canonical.com
(cherry picked from commit 5b169cb695bd450d7f64e3800f00c9237ee67f96)

diff --git a/Xi/xipassivegrab.c b/Xi/xipassivegrab.c
index 5cdd8ac..af46282 100644
--- a/Xi/xipassivegrab.c
+++ b/Xi/xipassivegrab.c
@@ -140,11 +140,17 @@ ProcXIPassiveGrabDevice(ClientPtr client)
 memset(param, 0, sizeof(param));
 param.grabtype = GRABTYPE_XI2;
 param.ownerEvents = stuff-owner_events;
-param.this_device_mode = stuff-grab_mode;
-param.other_devices_mode = stuff-paired_device_mode;
 param.grabWindow = stuff-grab_window;
 param.cursor = stuff-cursor;
 
+if (IsKeyboardDevice(dev)) {
+param.this_device_mode = stuff-grab_mode;
+param.other_devices_mode = stuff-paired_device_mode;
+} else {
+param.this_device_mode = stuff-paired_device_mode;
+param.other_devices_mode = stuff-grab_mode;
+}
+
 if (stuff-cursor != None)
 {
 status = dixLookupResourceByType(tmp, stuff-cursor,

commit 8c73f6bcbdc04380cc41d9f6dc7e849c7c4f9298
Author: Alan Coopersmith alan.coopersm...@oracle.com
Date:   Thu Dec 8 21:52:07 2011 -0800

Change disable_clientpointer return type to void

It doesn't return anything, nor does it's caller expect it to.

Fixes Solaris Studio compiler error:
xichangehierarchy.c, line 214: Function has no return statement : 
disable_clientpointer

Signed-off-by: Alan Coopersmith alan.coopersm...@oracle.com
Reviewed-by: Peter Hutterer peter.hutte...@who-t.net
Signed-off-by: Keith Packard kei...@keithp.com
(cherry picked from commit 372a6f10dc2d74d2d179e8b92449e9b8636a99ef)

diff --git a/Xi/xichangehierarchy.c b/Xi/xichangehierarchy.c
index dfcd52f..3facadd 100644
--- a/Xi/xichangehierarchy.c
+++ b/Xi/xichangehierarchy.c
@@ -202,7 +202,7 @@ unwind:
 return rc;
 }
 
-static int
+static void
 disable_clientpointer(DeviceIntPtr dev)
 {
 int i;

commit ae4272a5742119b10074a542d0dcd4c493cb83e4
Author: 

xorg-server: Changes to 'upstream-unstable'

2011-12-20 Thread Cyril Brulebois
 configure.ac|4 ++--
 hw/dmx/glxProxy/Makefile.am |2 ++
 2 files changed, 4 insertions(+), 2 deletions(-)

New commits:
commit 41524dd61020f2a446ec54643fa17aa791338cac
Author: Jeremy Huddleston jerem...@apple.com
Date:   Fri Dec 16 17:47:46 2011 -0800

configure.ac: 1.11.3

Signed-off-by: Jeremy Huddleston jerem...@apple.com

diff --git a/configure.ac b/configure.ac
index 817c907..5792731 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,8 +26,8 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.57)
-AC_INIT([xorg-server], 1.11.2.902, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE=2011-12-09
+AC_INIT([xorg-server], 1.11.3, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE=2011-12-16
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])
 AM_MAINTAINER_MODE

commit ee66474eb2009118a41539c6773e514a09d27e4d
Author: Gaetan Nadon mems...@videotron.ca
Date:   Fri Dec 9 07:45:02 2011 -0500

dmx: fix distcheck failure, missing compsize.h in Makefile.am

which was added in commit:
dmx: Build fix for -Werror=implicit-function-declaration

Reviewed-by: Peter Hutterer peter.hutte...@who-t.net
Signed-off-by: Gaetan Nadon mems...@videotron.ca
Signed-off-by: Keith Packard kei...@keithp.com
(cherry picked from commit 2c1d0a539c0fb1860ac89a00d1fb609f1959e1b6)

diff --git a/hw/dmx/glxProxy/Makefile.am b/hw/dmx/glxProxy/Makefile.am
index 8516048..4ee1036 100644
--- a/hw/dmx/glxProxy/Makefile.am
+++ b/hw/dmx/glxProxy/Makefile.am
@@ -1,10 +1,12 @@
 noinst_LIBRARIES = libglxproxy.a
 
 libglxproxy_a_SOURCES = compsize.c \
+compsize.h \
 g_disptab.c \
 g_disptab.h \
 global.c \
 glxcmds.c \
+glxcmds.h \
 glxcmdsswap.c \
 glxcontext.h \
 glxdrawable.h \


-- 
To UNSUBSCRIBE, email to debian-x-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/e1rcwsg-00073p...@vasks.debian.org



Re: xorg-server: Changes to 'upstream-unstable'

2011-12-20 Thread Cyril Brulebois
Cyril Brulebois k...@alioth.debian.org (20/12/2011):
  configure.ac|4 ++--
  hw/dmx/glxProxy/Makefile.am |2 ++
  2 files changed, 4 insertions(+), 2 deletions(-)

No big deal if we don't upload that version..

Mraw,
KiBi.


signature.asc
Description: Digital signature


xorg-server: Changes to 'upstream-unstable'

2011-12-10 Thread Julien Cristau
 Xext/saver.c |3 +--
 Xext/xvdisp.c|4 ++--
 Xi/extinit.c |4 ++--
 config/hal.c |1 +
 configure.ac |4 ++--
 hw/kdrive/src/kinput.c   |6 --
 hw/vfb/InitOutput.c  |4 +++-
 hw/xfree86/fbdevhw/fbdevhw.c |   18 ++
 hw/xfree86/loader/loadmod.c  |2 +-
 hw/xfree86/xaa/xaaGC.c   |1 +
 randr/rrcrtc.c   |   29 ++---
 11 files changed, 33 insertions(+), 43 deletions(-)

New commits:
commit 0ca8869e4537412f25bfd5610aba5e604952608c
Author: Jeremy Huddleston jerem...@apple.com
Date:   Fri Dec 9 12:58:30 2011 -0800

configure.ac: 1.11.2.902 (1.11.3 RC2)

Signed-off-by: Jeremy Huddleston jerem...@apple.com

diff --git a/configure.ac b/configure.ac
index 9237686..817c907 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,8 +26,8 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.57)
-AC_INIT([xorg-server], 1.11.2.901, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE=2011-11-28
+AC_INIT([xorg-server], 1.11.2.902, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE=2011-12-09
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])
 AM_MAINTAINER_MODE

commit e76c397eb90291b048e0b2102111008e3d2e469e
Author: Dave Airlie airl...@redhat.com
Date:   Mon Nov 28 16:37:59 2011 +

kdrive: drop screen crossing code.

The only kdrive server we probably care about anymore is Xephyr,
and this screen enable/disable code totally breaks it in multi-screen mode.

When you are in one screen the other stops updating.

Fixes https://bugzilla.redhat.com/show_bug.cgi?id=757457

Signed-off-by: Dave Airlie airl...@redhat.com
Reviewed-by: Peter Hutterer peter.hutte...@who-t.net
(cherry picked from commit 98c4a888a4428789386c7c47cecc81933b5999ba)

diff --git a/hw/kdrive/src/kinput.c b/hw/kdrive/src/kinput.c
index c14dd82..500a3d8 100644
--- a/hw/kdrive/src/kinput.c
+++ b/hw/kdrive/src/kinput.c
@@ -2135,12 +2135,6 @@ KdCursorOffScreen(ScreenPtr *ppScreen, int *x, int *y)
 static void
 KdCrossScreen(ScreenPtr pScreen, Bool entering)
 {
-#ifndef XIPAQ
-if (entering)
-   KdEnableScreen (pScreen);
-else
-   KdDisableScreen (pScreen);
-#endif
 }
 
 int KdCurScreen;   /* current event screen */

commit db418ff7501d960c8de813a37b8bb37b1ba22175
Author: Dave Airlie airl...@redhat.com
Date:   Thu Oct 20 10:48:26 2011 +0100

hal: free tmp_val in one missing case

Pointed out by coverity scan.

Signed-off-by: Dave Airlie airl...@redhat.com
Reviewed-by: Daniel Stone dan...@fooishbar.org
(cherry picked from commit 8d3731a811e33e263920dd7c8ec63d02968cb56e)

diff --git a/config/hal.c b/config/hal.c
index 297520a..a4141d5 100644
--- a/config/hal.c
+++ b/config/hal.c
@@ -355,6 +355,7 @@ device_added(LibHalContext *hal_ctx, const char *udi)
 if (!strcasecmp(tmp, .options)  
(!xkb_opts.options))
 xkb_opts.options = strdup(tmp_val);
 }
+free(tmp_val);
 }
 }
 }

commit 6b11b18ab683e1f38e5b27066b35947b96956e5f
Author: Dave Airlie airl...@redhat.com
Date:   Thu Oct 20 11:00:43 2011 +0100

xv: test correct number of requests. (v2)

Pointed out by coverity.

v2: fix swapped as well, as pointed out by Alan

Signed-off-by: Dave Airlie airl...@redhat.com
Reviewed-by: Alan Coopersmith alan.coopersm...@oracle.com
(cherry picked from commit 41229392b790f30a0f0ef1f4ed95647c5bca4001)

diff --git a/Xext/xvdisp.c b/Xext/xvdisp.c
index b968431..84b10b4 100644
--- a/Xext/xvdisp.c
+++ b/Xext/xvdisp.c
@@ -1265,7 +1265,7 @@ ProcXvDispatch(ClientPtr client)
 
   UpdateCurrentTime();
 
-  if (stuff-data  xvNumRequests) {
+  if (stuff-data = xvNumRequests) {
 SendErrorToClient(client, XvReqCode, stuff-data, 0, BadRequest);
 return BadRequest;
   }
@@ -1589,7 +1589,7 @@ SProcXvDispatch(ClientPtr client)
 
   UpdateCurrentTime();
 
-  if (stuff-data  xvNumRequests) {
+  if (stuff-data = xvNumRequests) {
 SendErrorToClient(client, XvReqCode, stuff-data, 0, BadRequest);
 return BadRequest;
   }

commit df16b789aaf5fe7025e5661117477a5f6f9129ee
Author: Dave Airlie airl...@redhat.com
Date:   Wed Oct 19 16:57:13 2011 +0100

xaa: avoid possible freed pointer reuse in epilogue

If the pGCPriv-flags == 2, then we try to assign the freed pGCPriv-XAAOps
avoid this by clearing the flags in to be destroyed pGCPriv.

Reported by coverity.

Signed-off-by: Dave Airlie airl...@redhat.com
Reviewed-by: Jeremy Huddleston jerem...@apple.com
(cherry picked from commit 1049139499d9132a20cd6d4d156fe9da9cddb6c2)

diff --git a/hw/xfree86/xaa/xaaGC.c b/hw/xfree86/xaa/xaaGC.c
index 

xorg-server: Changes to 'upstream-unstable'

2011-11-29 Thread Cyril Brulebois
 Xi/exevents.c   |2 -
 configure.ac|4 +-
 dix/devices.c   |4 ++
 dix/events.c|   21 
 dix/getevents.c |2 -
 hw/dmx/glxProxy/compsize.c  |1 
 hw/dmx/glxProxy/compsize.h  |   51 ++
 hw/dmx/glxProxy/g_renderswap.c  |1 
 hw/dmx/glxProxy/glxcmds.c   |2 +
 hw/dmx/glxProxy/glxcmds.h   |   37 ++
 hw/dmx/glxProxy/glxcmdsswap.c   |3 +
 hw/vfb/InitOutput.c |2 +
 hw/xfree86/common/xf86VidMode.c |3 +
 hw/xfree86/dri2/dri2.c  |   17 --
 hw/xfree86/dri2/dri2ext.c   |3 +
 hw/xfree86/modes/xf86Crtc.c |   41 +++-
 hw/xfree86/modes/xf86EdidModes.c|5 +++
 hw/xfree86/os-support/linux/lnx_video.c |8 ++--
 hw/xfree86/vbe/vbe.c|5 ++-
 include/input.h |4 +-
 include/os.h|3 +
 miext/rootless/rootlessScreen.c |4 +-
 os/io.c |1 
 record/record.c |   53 ++--
 24 files changed, 201 insertions(+), 76 deletions(-)

New commits:
commit 4689c84a07f87d35492feeae2bc59642c31b6eb3
Author: Jeremy Huddleston jerem...@apple.com
Date:   Mon Nov 28 00:07:29 2011 -0800

configure.ac: 1.11.2.901 (1.11.3 RC1)

Signed-off-by: Jeremy Huddleston jerem...@apple.com

diff --git a/configure.ac b/configure.ac
index f0a14c4..9237686 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,8 +26,8 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.57)
-AC_INIT([xorg-server], 1.11.2, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE=2011-11-04
+AC_INIT([xorg-server], 1.11.2.901, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE=2011-11-28
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])
 AM_MAINTAINER_MODE

commit e2661ddbc5d1b2edb1ab514a761f8c0b66e69736
Author: Derek Buitenhuis derek.buitenh...@gmail.com
Date:   Sun Nov 6 12:20:51 2011 -0500

Fix vesa's VBE PanelID interpretation

xserver's VESA driver's VBE (Vesa BIOS Extensions) code
includes a PanelID probe, which can get a monitor's native
resolution. From this, using CVT formulas, it derives
horizontal sync rate and a vertical refresh rate ranges.

It however, only derives the upper bounds of the ranges, and
the lower bounds cannot de derived. By default, they are set
to hardcoded constants which represent the lowest supported
resolution: 640x480. The constants in vbe.c however, were
not actually derived from forulas, but carried over from
other code from the bad old days, and are not relevant
to flat panel displays. This caused, for example, EEEPC701's
panel, with a native resolution of 800x480, to end up with
a upper bound of the horizontal sync rate that was lower
than the hardcoded lower bound, which of course broke things.

These numbers have been rederived using both my own CVT tool
based on xf86CVTMode(), and using the provided 'cvt' tool
that comes with xserver.

Signed-off-by: Derek Buitenhuis derek.buitenh...@gmail.com
Reviewed-by: Adam Jackson a...@redhat.com
Signed-off-by: Keith Packard kei...@keithp.com
(cherry picked from commit f0d50cc6651dce3a8a3cd3fb84210aa92b139763)

diff --git a/hw/xfree86/vbe/vbe.c b/hw/xfree86/vbe/vbe.c
index 04132d9..06a6284 100644
--- a/hw/xfree86/vbe/vbe.c
+++ b/hw/xfree86/vbe/vbe.c
@@ -1036,13 +1036,16 @@ VBEInterpretPanelID(int scrnIndex, struct vbePanelID 
*data)
 mode = xf86CVTMode(data-hsize, data-vsize, PANEL_HZ, 1, 0);
 
 pScrn-monitor-nHsync = 1;
-pScrn-monitor-hsync[0].lo = 31.5;
+pScrn-monitor-hsync[0].lo = 29.37;
 pScrn-monitor-hsync[0].hi = (float)mode-Clock / (float)mode-HTotal;
 pScrn-monitor-nVrefresh = 1;
 pScrn-monitor-vrefresh[0].lo = 56.0;
 pScrn-monitor-vrefresh[0].hi =
(float)mode-Clock*1000.0 / (float)mode-HTotal / (float)mode-VTotal;
 
+if (pScrn-monitor-vrefresh[0].hi  59.47)
+   pScrn-monitor-vrefresh[0].hi = 59.47;
+
 free(mode);
 }
 

commit 2e3406fc6737539210e29ac0b2821848e6d1f069
Author: Jeremy Huddleston jerem...@apple.com
Date:   Mon Nov 7 22:14:30 2011 +

dmx: Build fix for -Werror=implicit-function-declaration

Signed-off-by: Jeremy Huddleston jerem...@apple.com
Reviewed-by: Alan Coopersmith alan.coopersm...@oracle.com
Signed-off-by: Alan Coopersmith alan.coopersm...@oracle.com
(cherry picked from commit f405dfffe7d5db81d398615a80acbeba7e014ada)

diff --git a/hw/dmx/glxProxy/compsize.c b/hw/dmx/glxProxy/compsize.c
index 9a40d65..5a5d5d0 

xorg-server: Changes to 'upstream-unstable'

2011-11-02 Thread Cyril Brulebois
 composite/compalloc.c  |   11 +-
 configure.ac   |4 
 hw/xfree86/common/xf86Events.c |9 -
 hw/xfree86/modes/xf86Crtc.c|   25 -
 hw/xfree86/os-support/linux/lnx_init.c |   14 +--
 hw/xnest/Keyboard.c|   25 -
 hw/xquartz/applewm.c   |4 
 hw/xquartz/xpr/appledri.c  |  153 ++---
 hw/xwin/winwindowswm.c |4 
 os/utils.c |4 
 10 files changed, 210 insertions(+), 43 deletions(-)

New commits:
commit 0bffe6b38cdf6b21d9ec9b0abf0092d4d4eaef86
Author: Jeremy Huddleston jerem...@apple.com
Date:   Fri Oct 28 18:32:28 2011 -0700

configure.ac: Bump to 1.11.1.902 (1.11.2 RC2)

Signed-off-by: Jeremy Huddleston jerem...@apple.com

diff --git a/configure.ac b/configure.ac
index cc4292b..5b6e39c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,8 +26,8 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.57)
-AC_INIT([xorg-server], 1.11.1.901, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE=2011-10-14
+AC_INIT([xorg-server], 1.11.1.902, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE=2011-10-28
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])
 AM_MAINTAINER_MODE

commit a1d638da0d12c82c944bfecb996903210879f426
Author: Jeremy Huddleston jerem...@apple.com
Date:   Tue Oct 25 23:53:43 2011 -0700

XWin: windowswm: Correct byte swapping in event notifications

Signed-off-by: Jeremy Huddleston jerem...@apple.com
Reviewed-by: Jon TURNEY jon.tur...@dronecode.org.uk
(cherry picked from commit 286fa9bf9b4ffb0f9dbd3f1cae46ddcb27ee9318)

diff --git a/hw/xwin/winwindowswm.c b/hw/xwin/winwindowswm.c
index 7138409..f5d27e5 100644
--- a/hw/xwin/winwindowswm.c
+++ b/hw/xwin/winwindowswm.c
@@ -629,9 +629,11 @@ winWindowsWMExtensionInit (void)
   NULL,
   StandardMinorOpcode)))
 {
+  size_t i;
   WMReqCode = (unsigned char)extEntry-base;
   WMErrorBase = extEntry-errorBase;
   WMEventBase = extEntry-eventBase;
-  EventSwapVector[WMEventBase] = (EventSwapPtr) SNotifyEvent;
+  for (i=0; i  WindowsWMNumberEvents; i++)
+EventSwapVector[WMEventBase + i] = (EventSwapPtr) SNotifyEvent;
 }
 }

commit 0715469f1cb150261b51867df75892d26916ea05
Author: Jeremy Huddleston jerem...@apple.com
Date:   Tue Oct 25 23:49:33 2011 -0700

XQuartz: appledri: Correct byte swapping in event notifications

Signed-off-by: Jeremy Huddleston jerem...@apple.com
(cherry picked from commit dc054fefc586c5b404fe0f949dbd456e5267c647)

diff --git a/hw/xquartz/xpr/appledri.c b/hw/xquartz/xpr/appledri.c
index 129fc78..80955fe 100644
--- a/hw/xquartz/xpr/appledri.c
+++ b/hw/xquartz/xpr/appledri.c
@@ -541,9 +541,11 @@ AppleDRIExtensionInit(void)
  SProcAppleDRIDispatch,
  AppleDRIResetProc,
  StandardMinorOpcode))) {
+size_t i;
 DRIReqCode = (unsigned char)extEntry-base;
 DRIErrorBase = extEntry-errorBase;
 DRIEventBase = extEntry-eventBase;
-EventSwapVector[DRIEventBase] = (EventSwapPtr) SNotifyEvent;
+for (i=0; i  AppleDRINumberEvents; i++)
+EventSwapVector[DRIEventBase + i] = (EventSwapPtr) SNotifyEvent;
 }
 }

commit bc2600466eea2af2d6a81fe1592d908565995cb2
Author: Jeremy Huddleston jerem...@apple.com
Date:   Tue Oct 25 23:48:16 2011 -0700

XQuartz: applewm: Correct byte swapping in event notifications

Signed-off-by: Jeremy Huddleston jerem...@apple.com
(cherry picked from commit d5fee2b638fabeb8bec31a24e57d5c2a232d0893)

diff --git a/hw/xquartz/applewm.c b/hw/xquartz/applewm.c
index 2f26e61..2dfc35a 100644
--- a/hw/xquartz/applewm.c
+++ b/hw/xquartz/applewm.c
@@ -727,10 +727,12 @@ AppleWMExtensionInit(
  NULL,
  StandardMinorOpcode)))
 {
+size_t i;
 WMReqCode = (unsigned char)extEntry-base;
 WMErrorBase = extEntry-errorBase;
 WMEventBase = extEntry-eventBase;
-EventSwapVector[WMEventBase] = (EventSwapPtr) SNotifyEvent;
+for (i=0; i  AppleWMNumberEvents; i++)
+EventSwapVector[WMEventBase + i] = (EventSwapPtr) SNotifyEvent;
 appleWMProcs = procsPtr;
 }
 }

commit 7be5492bcfab540676d6f849b85ad3db64a5ada0
Author: Jeremy Huddleston jerem...@apple.com
Date:   Fri Oct 21 10:27:16 2011 -0700

XQuartz: appledri: Allow byte swapped requests

Even though it's only valid when local, it is possible for a local
client and the server to not match endianness, such as when running
a ppc application under Rosetta.

Signed-off-by: Jeremy Huddleston jerem...@apple.com
(cherry 

xorg-server: Changes to 'upstream-unstable'

2011-10-15 Thread Julien Cristau
 Xext/shm.c |6 +-
 Xi/xipassivegrab.c |   13 ++---
 config/udev.c  |2 +-
 configure.ac   |4 ++--
 dix/dispatch.c |1 -
 dix/dixfonts.c |   30 +++---
 dix/events.c   |   39 +--
 dix/grabs.c|2 +-
 fb/fbpict.c|4 +++-
 hw/xfree86/modes/xf86Crtc.c|1 +
 hw/xquartz/X11Application.m|2 +-
 hw/xquartz/pbproxy/Makefile.am |1 +
 test/input.c   |2 +-
 xkb/xkb.c  |3 +++
 14 files changed, 69 insertions(+), 41 deletions(-)

New commits:
commit 374be44d13bc8f04a2413b6d5b2006e73d5a8f53
Author: Jeremy Huddleston jerem...@apple.com
Date:   Fri Oct 14 16:29:54 2011 -0700

configure.ac: Bump to 1.11.1.901 (1.11.2 RC1)

Signed-off-by: Jeremy Huddleston jerem...@apple.com

diff --git a/configure.ac b/configure.ac
index 51d01e4..cc4292b 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,8 +26,8 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.57)
-AC_INIT([xorg-server], 1.11.1, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE=2011-09-24
+AC_INIT([xorg-server], 1.11.1.901, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE=2011-10-14
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])
 AM_MAINTAINER_MODE

commit bbe6a69da398dba93679c23c3c50f9916cb562ca
Author: Peter Hutterer peter.hutte...@who-t.net
Date:   Fri Jul 29 16:33:54 2011 +1000

dix: don't XWarpPointer through the last slave anymore (#38313)

This line was introduced pre-1.6 to fix Bug 19297. The effect of warping
through the VCP then was that if a device had custom valuator ranges, the
warp position would be wrong. The better device for this effect is the the
XTest device.

This fixes a server crash where the lastSlave is a pointer device without
valuators (Bug 38313#0).

And while we're at it, make sure the Xinerama code-path does the same.

X.Org Bug 38313 http://bugs.freedesktop.org/show_bug.cgi?id=38313

Signed-off-by: Peter Hutterer peter.hutte...@who-t.net
Reviewed-by: Daniel Stone dan...@fooishbar.org
(cherry picked from commit 2bfb802839688ecf328119c4c6979390fc60348d)

diff --git a/dix/events.c b/dix/events.c
index 8e7f9c3..8068fc7 100644
--- a/dix/events.c
+++ b/dix/events.c
@@ -3351,16 +3351,21 @@ XineramaWarpPointer(ClientPtr client)
 {
 WindowPtr  dest = NULL;
 intx, y, rc;
-SpritePtr   pSprite = PickPointer(client)-spriteInfo-sprite;
+DeviceIntPtr dev;
+SpritePtr   pSprite;
 
 REQUEST(xWarpPointerReq);
 
-
 if (stuff-dstWid != None) {
rc = dixLookupWindow(dest, stuff-dstWid, client, DixReadAccess);
if (rc != Success)
return rc;
 }
+
+/* Post through the XTest device */
+dev = PickPointer(client);
+dev = GetXTestDevice(dev);
+pSprite = dev-spriteInfo-sprite;
 x = pSprite-hotPhys.x;
 y = pSprite-hotPhys.y;
 
@@ -3410,9 +3415,9 @@ XineramaWarpPointer(ClientPtr client)
 else if (y = pSprite-physLimits.y2)
y = pSprite-physLimits.y2 - 1;
 if (pSprite-hotShape)
-   ConfineToShape(PickPointer(client), pSprite-hotShape, x, y);
+   ConfineToShape(dev, pSprite-hotShape, x, y);
 
-XineramaSetCursorPosition(PickPointer(client), x, y, TRUE);
+XineramaSetCursorPosition(dev, x, y, TRUE);
 
 return Success;
 }
@@ -3430,7 +3435,7 @@ ProcWarpPointer(ClientPtr client)
 WindowPtr  dest = NULL;
 intx, y, rc;
 ScreenPtr  newScreen;
-DeviceIntPtr dev, tmp;
+DeviceIntPtr dev, tmp, xtest_dev = NULL;
 SpritePtr   pSprite;
 
 REQUEST(xWarpPointerReq);
@@ -3443,11 +3448,13 @@ ProcWarpPointer(ClientPtr client)
rc = XaceHook(XACE_DEVICE_ACCESS, client, dev, DixWriteAccess);
if (rc != Success)
return rc;
+if (IsXTestDevice(tmp, dev))
+xtest_dev = tmp;
}
 }
 
-if (dev-lastSlave)
-dev = dev-lastSlave;
+/* Use the XTest device to actually move the pointer */
+dev = xtest_dev;
 pSprite = dev-spriteInfo-sprite;
 
 #ifdef PANORAMIX

commit 2e28ff155ffc30707d42d885d5f6fc891bc82252
Author: Nobuhiro Iwamatsu iwama...@nigauri.org
Date:   Tue Aug 9 11:00:34 2011 +0900

Disable check of double-aligned in test/input.c on Renesas SH

Renesas SH is not aligned at size of double.
When structure has double value, It is aligned in 4byte (long).

Signed-off-by: Nobuhiro Iwamatsu iwama...@nigauri.org
Reviewed-by: Peter Hutterer peter.hutte...@who-t.net
Signed-off-by: Peter Hutterer peter.hutte...@who-t.net
(cherry picked from commit b29ce0726d55ec41cfbce0814e21b0217ef64efe)

diff --git 

xorg-server: Changes to 'upstream-unstable'

2011-09-24 Thread Julien Cristau
Rebased ref, commits from common ancestor:
commit aabd25bd0bd5f30e4ebbf1d48ef800b3ed2abcbe
Author: Jeremy Huddleston jerem...@apple.com
Date:   Sat Sep 24 00:06:32 2011 -0700

configure.ac: Version bumped to 1.11.1

Signed-off-by: Jeremy Huddleston jerem...@apple.com

diff --git a/configure.ac b/configure.ac
index 2ac1f2e..51d01e4 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,8 +26,8 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.57)
-AC_INIT([xorg-server], 1.11.0, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE=2011-08-26
+AC_INIT([xorg-server], 1.11.1, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE=2011-09-24
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])
 AM_MAINTAINER_MODE

commit 89881051664209b5b2e2c4a7c2dd25f085581d43
Author: Aaron Plattner aplatt...@nvidia.com
Date:   Wed Sep 14 15:25:06 2011 -0700

fb: Rename wfbTriangles and wfbTrapezoids

These symbols were not renamed when they were added to libfb:

 # nm -D libwfb.so | grep ' fb'
 00028d00 T fbTrapezoids
 00028d60 T fbTriangles

This causes corruption and/or crashes on wfb-ful drivers like nvidia:

 Program received signal SIGABRT, Aborted.
 0x7fd67f3a0405 in *__GI_raise (sig=optimized out) at 
../nptl/sysdeps/unix/sysv/linux/raise.c:64
 64  ../nptl/sysdeps/unix/sysv/linux/raise.c: No such file or directory.
 in ../nptl/sysdeps/unix/sysv/linux/raise.c
 (gdb) bt
 #0  0x7fd67f3a0405 in *__GI_raise (sig=optimized out) at 
../nptl/sysdeps/unix/sysv/linux/raise.c:64
 #1  0x7fd67f3a3680 in *__GI_abort () at abort.c:92
 #2  0x7fd67f3995b1 in *__GI___assert_fail (assertion=0x7fd679ecb804 
key-initialized, file=optimized out, line=116, function=0x7fd679ecbbc0 
dixGetPrivateAddr)
 at assert.c:81
 #3  0x7fd679ec55b6 in ?? () from /usr/lib/xorg/modules/libfb.so
 #4  0x7fd679eca9ef in ?? () from /usr/lib/xorg/modules/libfb.so
 #5  0x7fd679ecae20 in fbTriangles () from 
/usr/lib/xorg/modules/libfb.so
 #6  0x7fd67a58fc55 in ?? () from 
/usr/lib/xorg/modules/drivers/nvidia_drv.so
 #7  0x004f38d1 in ?? ()
 #8  0x00437ae9 in ?? ()
 #9  0x00426eaa in ?? ()
 #10 0x7fd67f38cead in __libc_start_main (main=optimized out, 
argc=optimized out, ubp_av=optimized out, init=optimized out, 
fini=optimized out,
 rtld_fini=optimized out, stack_end=0x7fff99860d78) at 
libc-start.c:228
 #11 0x0042719d in _start ()

Signed-off-by: Aaron Plattner aplatt...@nvidia.com
Reviewed-by: Jeremy Huddleston jerem...@apple.com
Signed-off-by: Keith Packard kei...@keithp.com
(cherry picked from commit 03d032991da21bf866ca30dcbb6b7f9f99df441a)

diff --git a/fb/wfbrename.h b/fb/wfbrename.h
index e855edd..8b896eb 100644
--- a/fb/wfbrename.h
+++ b/fb/wfbrename.h
@@ -160,6 +160,8 @@
 #define fbStippleTable wfbStippleTable
 #define fbTile wfbTile
 #define fbTransparentSpan wfbTransparentSpan
+#define fbTrapezoids wfbTrapezoids
+#define fbTriangles wfbTriangles
 #define fbUninstallColormap wfbUninstallColormap
 #define fbUnmapWindow wfbUnmapWindow
 #define fbUnrealizeFont wfbUnrealizeFont

commit 4ad271d06c5aa42721c0e2e01e17e34a39825c65
Author: Aaron Plattner aplatt...@nvidia.com
Date:   Mon Aug 29 20:44:18 2011 -0700

xfree86: Bump extension ABI version to 6.0

The video driver ABI was bumped to 11.0 in commit
0de7cec90738a7a5020150309866bb0e23b6f479 because of a change to the
size of ATOM in commit 51f353d0a0d116af16d7d9590cadef6c56328746.  This
also affects extension modules, so the extension ABI version should
have been bumped too.

Signed-off-by: Aaron Plattner aplatt...@nvidia.com
Reviewed-by: Peter Hutterer peter.hutte...@who-t.net
Signed-off-by: Keith Packard kei...@keithp.com

diff --git a/hw/xfree86/common/xf86Module.h b/hw/xfree86/common/xf86Module.h
index 2a5c805..3038c04 100644
--- a/hw/xfree86/common/xf86Module.h
+++ b/hw/xfree86/common/xf86Module.h
@@ -84,7 +84,7 @@ typedef enum {
 #define ABI_ANSIC_VERSION  SET_ABI_VERSION(0, 4)
 #define ABI_VIDEODRV_VERSION   SET_ABI_VERSION(11, 0)
 #define ABI_XINPUT_VERSION SET_ABI_VERSION(13, 0)
-#define ABI_EXTENSION_VERSION  SET_ABI_VERSION(5, 0)
+#define ABI_EXTENSION_VERSION  SET_ABI_VERSION(6, 0)
 #define ABI_FONT_VERSION   SET_ABI_VERSION(0, 6)
 
 #define MODINFOSTRING1 0xef23fdc5

commit 0caeef6146bee5fb1827ab25db191685dde9d4b4
Author: Keith Packard kei...@keithp.com
Date:   Fri Aug 26 16:46:13 2011 -0700

Version bumped to 1.11

Signed-off-by: Keith Packard kei...@keithp.com

diff --git a/configure.ac b/configure.ac
index 4f4bcf2..2ac1f2e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,8 +26,8 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.57)

xorg-server: Changes to 'upstream-unstable'

2011-08-28 Thread Cyril Brulebois
Rebased ref, commits from common ancestor:
commit d4bb09823fa9a7cd78366e7a3cf4319e1f69f1b5
Author: Cyril Brulebois k...@debian.org
Date:   Mon May 30 11:37:48 2011 +0200

Upload to unstable.

diff --git a/debian/changelog b/debian/changelog
index f4da03e..607e7f9 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,11 +1,11 @@
-xorg-server (2:1.10.2-1) UNRELEASED; urgency=low
+xorg-server (2:1.10.2-1) unstable; urgency=low
 
   * New upstream release.
   * Add 20-workaround-36986.diff to avoid test failures on *i386.
   * On GNU/kFreeBSD, enable HAL support for the main build, but disable it
 for the udeb build, thanks to Robert Millan (Closes: #596586).
 
- -- Cyril Brulebois k...@debian.org  Mon, 30 May 2011 11:22:21 +0200
+ -- Cyril Brulebois k...@debian.org  Mon, 30 May 2011 11:37:37 +0200
 
 xorg-server (2:1.10.1.901-1) experimental; urgency=low
 

commit 4ee10d0849a2642ba1ef342a843a7d574d1ee30d
Author: Cyril Brulebois k...@debian.org
Date:   Mon May 30 11:37:22 2011 +0200

On GNU/kFreeBSD, enable HAL support for the main build, but disable it for 
the udeb build, thanks to Robert Millan (Closes: #596586).

diff --git a/debian/changelog b/debian/changelog
index d1da2d0..f4da03e 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -2,6 +2,8 @@ xorg-server (2:1.10.2-1) UNRELEASED; urgency=low
 
   * New upstream release.
   * Add 20-workaround-36986.diff to avoid test failures on *i386.
+  * On GNU/kFreeBSD, enable HAL support for the main build, but disable it
+for the udeb build, thanks to Robert Millan (Closes: #596586).
 
  -- Cyril Brulebois k...@debian.org  Mon, 30 May 2011 11:22:21 +0200
 
diff --git a/debian/rules b/debian/rules
index 87880af..7d1c012 100755
--- a/debian/rules
+++ b/debian/rules
@@ -69,7 +69,9 @@ config_backend = --disable-config-dbus
 ifeq ($(DEB_HOST_ARCH_OS), linux)
config_backend += --enable-config-udev --disable-config-hal
 else ifeq ($(DEB_HOST_ARCH_OS), kfreebsd)
-   config_backend += --disable-config-udev --enable-config-hal
+   config_backend += --disable-config-udev
+   config_backend_main += --enable-config-hal
+   config_backend_udeb += --disable-config-hal
 else # hurd
config_backend += --disable-config-udev --disable-config-hal
 endif
@@ -146,6 +148,7 @@ confflags_main = \
$(build_xfbdev) \
--with-sha1=libgcrypt \
--enable-xcsecurity \
+   $(config_backend_main) \
$(void)
 
 confflags_udeb = \
@@ -176,6 +179,7 @@ confflags_udeb = \
--disable-xephyr \
--disable-xfbdev \
--with-sha1=nettle \
+   $(config_backend_udeb) \
$(void)
 
 $(STAMP_DIR)/autoreconf: $(STAMP_DIR)/stampdir $(QUILT_STAMPFN)

commit 4c8fbd4a01ee7146ed2451a3a0d248a3b802e1d3
Author: Cyril Brulebois k...@debian.org
Date:   Mon May 30 11:32:13 2011 +0200

Add 20-workaround-36986.diff to avoid test failures on *i386.

diff --git a/debian/changelog b/debian/changelog
index c062eee..d1da2d0 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,6 +1,7 @@
 xorg-server (2:1.10.2-1) UNRELEASED; urgency=low
 
   * New upstream release.
+  * Add 20-workaround-36986.diff to avoid test failures on *i386.
 
  -- Cyril Brulebois k...@debian.org  Mon, 30 May 2011 11:22:21 +0200
 
diff --git a/debian/patches/20-workaround-36986.diff 
b/debian/patches/20-workaround-36986.diff
new file mode 100644
index 000..24b3cb9
--- /dev/null
+++ b/debian/patches/20-workaround-36986.diff
@@ -0,0 +1,14 @@
+Workaround fdo#36986 http://bugs.freedesktop.org/show_bug.cgi?id=36986
+--- a/test/input.c
 b/test/input.c
+@@ -1213,8 +1213,10 @@
+ 
+ g_assert(v);
+ g_assert(v-numAxes == num_axes);
++#if 0
+ g_assert(((void*)v-axisVal - (void*)v) % sizeof(double) == 0);
+ g_assert(((void*)v-axes - (void*)v) % sizeof(double) == 0);
++#endif
+ num_axes ++;
+ }
+ 
diff --git a/debian/patches/series b/debian/patches/series
index 2e0f947..a9c30f6 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -5,3 +5,4 @@
 07-xfree86-fix-build-with-xv-disabled.diff
 #13_debian_add_xkbpath_env_variable.diff
 15-nouveau.diff
+20-workaround-36986.diff

commit 4b44aa8a9dca344ab61ee7e0d511a2d44124e65b
Author: Cyril Brulebois k...@debian.org
Date:   Mon May 30 11:22:34 2011 +0200

Bump changelogs.

diff --git a/ChangeLog b/ChangeLog
index 047e8cf..a914e76 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,181 @@
+commit d784fd09dc277610d5f4e98d577c4fdcd9215f9c
+Author: Jeremy Huddleston jerem...@apple.com
+Date:   Sat May 28 16:59:05 2011 -0700
+
+configure.ac: Bump version to 1.10.2
+
+Signed-off-by: Jeremy Huddleston jerem...@apple.com
+
+commit 398114c1489fbfc9fe487de38ff4a4176755eee6
+Author: Jeremy Huddleston jerem...@apple.com
+Date:   Sun May 22 10:18:36 2011 -0700
+
+XQuartz: Don't crash if CG increases our display resolution
+
+miPaintWindow would cause fbFill() to overwrite pScreen's pixmap which was
+sized for the old 

xorg-server: Changes to 'upstream-unstable'

2011-08-24 Thread Timo Aaltonen
 configure.ac |4 
 dix/getevents.c  |   23 
 exa/exa_mixed.c  |   23 
 glx/glxscreens.c |7 
 glx/glxscreens.h |1 
 hw/dmx/glxProxy/glxscreens.h |1 
 hw/kdrive/ephyr/ephyrdriext.c|4 
 hw/xfree86/common/xf86Config.c   |3 
 hw/xfree86/common/xf86Init.c |   32 
 hw/xfree86/common/xf86Option.c   |2 
 hw/xfree86/common/xf86Xinput.c   |1 
 hw/xquartz/GL/indirect.c |   18 
 hw/xquartz/X11Application.h  |3 
 hw/xquartz/X11Application.m  |   47 
 hw/xquartz/X11Controller.h   |2 
 hw/xquartz/X11Controller.m   |   18 
 hw/xquartz/bundle/Makefile.am|9 
 hw/xquartz/bundle/Resources/Dutch.lproj/Localizable.strings  |binary
 hw/xquartz/bundle/Resources/Dutch.lproj/locversion.plist |4 
 hw/xquartz/bundle/Resources/Dutch.lproj/main.nib/designable.nib  | 7414 
-
 hw/xquartz/bundle/Resources/Dutch.lproj/main.nib/keyedobjects.nib|binary
 hw/xquartz/bundle/Resources/English.lproj/locversion.plist   |   14 
 hw/xquartz/bundle/Resources/French.lproj/Localizable.strings |binary
 hw/xquartz/bundle/Resources/French.lproj/locversion.plist|4 
 hw/xquartz/bundle/Resources/French.lproj/main.nib/designable.nib |  633 
 hw/xquartz/bundle/Resources/French.lproj/main.nib/keyedobjects.nib   |binary
 hw/xquartz/bundle/Resources/German.lproj/Localizable.strings |binary
 hw/xquartz/bundle/Resources/German.lproj/locversion.plist|4 
 hw/xquartz/bundle/Resources/German.lproj/main.nib/designable.nib |  586 
 hw/xquartz/bundle/Resources/German.lproj/main.nib/keyedobjects.nib   |binary
 hw/xquartz/bundle/Resources/Italian.lproj/Localizable.strings|binary
 hw/xquartz/bundle/Resources/Italian.lproj/locversion.plist   |4 
 hw/xquartz/bundle/Resources/Italian.lproj/main.nib/designable.nib| 7417 
-
 hw/xquartz/bundle/Resources/Italian.lproj/main.nib/keyedobjects.nib  |binary
 hw/xquartz/bundle/Resources/Japanese.lproj/Localizable.strings   |binary
 hw/xquartz/bundle/Resources/Japanese.lproj/locversion.plist  |4 
 hw/xquartz/bundle/Resources/Japanese.lproj/main.nib/designable.nib   |  583 
 hw/xquartz/bundle/Resources/Japanese.lproj/main.nib/keyedobjects.nib |binary
 hw/xquartz/bundle/Resources/Spanish.lproj/Localizable.strings|binary
 hw/xquartz/bundle/Resources/Spanish.lproj/locversion.plist   |4 
 hw/xquartz/bundle/Resources/Spanish.lproj/main.nib/designable.nib| 7430 
-
 hw/xquartz/bundle/Resources/Spanish.lproj/main.nib/keyedobjects.nib  |binary
 hw/xquartz/bundle/Resources/ar.lproj/Localizable.strings |binary
 hw/xquartz/bundle/Resources/ar.lproj/locversion.plist|4 
 hw/xquartz/bundle/Resources/ar.lproj/main.nib/designable.nib |  375 
 hw/xquartz/bundle/Resources/ar.lproj/main.nib/keyedobjects.nib   |binary
 hw/xquartz/bundle/Resources/da.lproj/Localizable.strings |binary
 hw/xquartz/bundle/Resources/da.lproj/locversion.plist|4 
 hw/xquartz/bundle/Resources/da.lproj/main.nib/designable.nib |  652 
 hw/xquartz/bundle/Resources/da.lproj/main.nib/keyedobjects.nib   |binary
 hw/xquartz/bundle/Resources/el.lproj/InfoPlist.strings   |binary
 hw/xquartz/bundle/Resources/el.lproj/Localizable.strings |binary
 hw/xquartz/bundle/Resources/el.lproj/locversion.plist|   14 
 hw/xquartz/bundle/Resources/el.lproj/main.nib/designable.nib | 3521 

 hw/xquartz/bundle/Resources/el.lproj/main.nib/keyedobjects.nib   |binary
 hw/xquartz/bundle/Resources/fi.lproj/Localizable.strings |binary
 hw/xquartz/bundle/Resources/fi.lproj/locversion.plist|4 
 hw/xquartz/bundle/Resources/fi.lproj/main.nib/designable.nib |  421 
 hw/xquartz/bundle/Resources/fi.lproj/main.nib/keyedobjects.nib   |binary
 hw/xquartz/bundle/Resources/he.lproj/InfoPlist.strings   |binary
 hw/xquartz/bundle/Resources/he.lproj/Localizable.strings |binary
 hw/xquartz/bundle/Resources/he.lproj/locversion.plist|   14 
 hw/xquartz/bundle/Resources/he.lproj/main.nib/designable.nib | 3523 

 

xorg-server: Changes to 'upstream-unstable'

2011-08-08 Thread Cyril Brulebois
 configure.ac |4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

New commits:
commit c9be51523af53742dd7475b73ab151867056d91e
Author: Jeremy Huddleston jerem...@apple.com
Date:   Fri Jul 8 12:12:16 2011 -0700

configure.ac: Bump version to 1.10.3

Signed-off-by: Jeremy Huddleston jerem...@apple.com

diff --git a/configure.ac b/configure.ac
index b6c651d..94923db 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,8 +26,8 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.57)
-AC_INIT([xorg-server], 1.10.2.902, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE=2011-07-01
+AC_INIT([xorg-server], 1.10.3, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE=2011-07-08
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])
 AM_MAINTAINER_MODE


-- 
To UNSUBSCRIBE, email to debian-x-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/e1qqlzg-0004ei...@vasks.debian.org



xorg-server: Changes to 'upstream-unstable'

2011-07-02 Thread Cyril Brulebois
 Xext/xvmc.c|   11 
 Xi/xichangehierarchy.c |2 
 configure.ac   |4 
 dix/devices.c  |   40 
 dix/events.c   |2 
 dix/window.c   |2 
 fb/fbbltone.c  |4 
 glx/Makefile.am|1 
 glx/glapi.h|3 
 glx/glapi_gentable.c   | 7589 +
 hw/xfree86/os-support/linux/lnx_init.c |   83 
 hw/xquartz/GL/indirect.c   | 1079 
 hw/xquartz/X11Application.m|   27 
 include/input.h|2 
 include/privates.h |2 
 randr/rrcrtc.c |2 
 randr/rrdispatch.c |   32 
 randr/rrscreen.c   |   12 
 test/input.c   |3 
 test/xi2/protocol-common.c |2 
 20 files changed, 7794 insertions(+), 1108 deletions(-)

New commits:
commit bc3c539e8a2b0b95a19e40258bcb18824d7700cd
Author: Jeremy Huddleston jerem...@apple.com
Date:   Fri Jul 1 11:34:08 2011 -0700

configure.ac: Bump version to 1.10.2.902 (1.10.3 RC2)

Signed-off-by: Jeremy Huddleston jerem...@apple.com

diff --git a/configure.ac b/configure.ac
index 9aa8211..b6c651d 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,8 +26,8 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.57)
-AC_INIT([xorg-server], 1.10.2.901, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE=2011-06-17
+AC_INIT([xorg-server], 1.10.2.902, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE=2011-07-01
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])
 AM_MAINTAINER_MODE

commit 79ef102c3adf7cae8982b05320109d0439e6587c
Author: Jon TURNEY jon.tur...@dronecode.org.uk
Date:   Mon Jun 27 15:06:16 2011 +0100

Guard use of backtrace() with HAVE_BACKTRACE

Guard the use of backtrace() with HAVE_BACKTRACE, since we already
have the autoconf machinery for setting that.

For the moment, assume dladdr() is available when backtrace() is

Signed-off-by: Jon TURNEY jon.tur...@dronecode.org.uk
Signed-off-by: Jeremy Huddleston jerem...@apple.com
(cherry picked from commit 38d55f06cfbf4b05fee0aef8f97f90e835beaacb)

diff --git a/glx/glapi_gentable.c b/glx/glapi_gentable.c
index a9ba3af..b49ae20 100644
--- a/glx/glapi_gentable.c
+++ b/glx/glapi_gentable.c
@@ -31,7 +31,10 @@
 #include dix-config.h
 #endif
 
+#ifdef HAVE_BACKTRACE
 #include execinfo.h
+#endif
+
 #include dlfcn.h
 #include stdlib.h
 #include stdio.h
@@ -46,6 +49,8 @@
 static void
 __glapi_gentable_NoOp(void) {
 const char *fstr = Unknown;
+
+#ifdef HAVE_BACKTRACE
 void *frames[2];
 
 if(backtrace(frames, 2) == 2) {
@@ -54,6 +59,7 @@ __glapi_gentable_NoOp(void) {
 if(info.dli_sname)
 fstr = info.dli_sname;
 }
+#endif
 
 LogMessage(X_ERROR, GLX: Call to unimplemented API: %s\n, fstr);
 }

commit f0ee98584c909b503691d72c01f76602d0a28ba2
Author: Jeremy Huddleston jerem...@apple.com
Date:   Tue Jun 21 21:14:46 2011 -0700

XQuartz: Make a call to activateIgnoringOtherApps in our 
NSApplicationActivatedEventType handler

In addition, this change will not call into the X11 activation unless an X11
window was active when we deactivated.  We can't rely on the event and 
current
key windows because the key window will be nil until activated, and the 
event
will only reference the window if the window was clicked (whereas it will be
nil if we activated via dock or cmd-tab).

Signed-off-by: Jeremy Huddleston jerem...@apple.com
(cherry picked from commit c8b80a82d97d92d445c1c0af6dba42c9de7c56cd)

diff --git a/hw/xquartz/X11Application.m b/hw/xquartz/X11Application.m
index a5159b6..17e6b27 100644
--- a/hw/xquartz/X11Application.m
+++ b/hw/xquartz/X11Application.m
@@ -334,18 +334,21 @@ static void message_kit_thread (SEL selector, NSObject 
*arg) {
 
 case NSAppKitDefined:
 switch ([e subtype]) {
+static BOOL x_was_active = NO;
+
 case NSApplicationActivatedEventType:
 for_x = NO;
-if ([self modalWindow] == nil) {
+if ([e window] == nil  x_was_active) {
 BOOL order_all_windows = YES, workspaces, ok;
 for_appkit = NO;
-
-/* FIXME: hack to avoid having to pass the event to 
appkit,
- which would cause it to raise one of its windows. */
+
+/* FIXME: This is a hack to avoid passing the event to 
AppKit which
+ *would result in it raising one of its 
windows.
+

xorg-server: Changes to 'upstream-unstable'

2011-05-30 Thread Cyril Brulebois
 Xi/exevents.c |   11 
 Xi/extinit.c  |2 
 Xi/xipassivegrab.c|   16 
 configure.ac  |6 
 dbe/dbe.c |   25 
 dix/devices.c |   47 
 dix/main.c|   25 
 dix/ptrveloc.c|2 
 glx/Makefile.am   |6 
 glx/glapi.c   |  558 --
 glx/glapi.h   |   28 
 glx/glapitemp.h   | 6655 --
 glx/glxcmds.c |  109 
 glx/glxdri2.c |1 
 glx/glxdriswrast.c|8 
 glx/glxext.c  |   53 
 glx/glxserver.h   |7 
 hw/xfree86/Makefile.am|2 
 hw/xquartz/GL/indirect.c  |9 
 hw/xquartz/X11Application.m   |2 
 hw/xquartz/applewmExt.h   |   13 
 hw/xquartz/bundle/Info.plist.cpp  |4 
 hw/xquartz/darwinEvents.c |   28 
 hw/xquartz/mach-startup/bundle-main.c |   47 
 hw/xquartz/pbproxy/app-main.m |6 
 hw/xquartz/pbproxy/main.m |   16 
 hw/xquartz/pbproxy/x-selection.m  |   11 
 hw/xquartz/quartz.c   |   15 
 hw/xquartz/quartzRandR.c  |  219 -
 hw/xquartz/xpr/xprAppleWM.c   |4 
 hw/xquartz/xpr/xprScreen.c|1 
 include/input.h   |5 
 include/inputstr.h|2 
 mi/mieq.c |   16 
 miext/rootless/rootlessScreen.c   |2 
 os/access.c   |2 
 os/log.c  |4 
 os/xstrans.c  |5 
 record/record.c   |2 
 test/input.c  |   24 
 40 files changed, 439 insertions(+), 7559 deletions(-)

New commits:
commit d784fd09dc277610d5f4e98d577c4fdcd9215f9c
Author: Jeremy Huddleston jerem...@apple.com
Date:   Sat May 28 16:59:05 2011 -0700

configure.ac: Bump version to 1.10.2

Signed-off-by: Jeremy Huddleston jerem...@apple.com

diff --git a/configure.ac b/configure.ac
index 3a2120c..398d16f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,8 +26,8 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.57)
-AC_INIT([xorg-server], 1.10.1.902, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE=2011-05-20
+AC_INIT([xorg-server], 1.10.2, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE=2011-05-28
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])
 AM_MAINTAINER_MODE

commit 398114c1489fbfc9fe487de38ff4a4176755eee6
Author: Jeremy Huddleston jerem...@apple.com
Date:   Sun May 22 10:18:36 2011 -0700

XQuartz: Don't crash if CG increases our display resolution

miPaintWindow would cause fbFill() to overwrite pScreen's pixmap which was
sized for the old resolution.

Signed-off-by: Jeremy Huddleston jerem...@apple.com
(cherry picked from commit 1fb501ad1521cfedaa5cf3052d45a924ef1866cf)

diff --git a/hw/xquartz/quartz.c b/hw/xquartz/quartz.c
index 7de7138..226cb2f 100644
--- a/hw/xquartz/quartz.c
+++ b/hw/xquartz/quartz.c
@@ -239,8 +239,6 @@ void QuartzUpdateScreens(void) {
 AppleWMSetScreenOrigin(pRoot);
 pScreen-ResizeWindow(pRoot, x - sx, y - sy, width, height, NULL);
 
-miPaintWindow(pRoot, pRoot-borderClip,  PW_BACKGROUND);
-
 /* rdar://problem/7770779 pointer events are clipped to old display 
region after display reconfiguration
  * http://xquartz.macosforge.org/trac/ticket/346
  */
@@ -268,6 +266,9 @@ void QuartzUpdateScreens(void) {
 
 quartzProcs-UpdateScreen(pScreen);
 
+/* miPaintWindow needs to be called after RootlessUpdateScreenPixmap (from 
xprUpdateScreen) */
+miPaintWindow(pRoot, pRoot-borderClip,  PW_BACKGROUND);
+
 /* Tell RandR about the new size, so new connections get the correct info 
*/
 RRScreenSizeNotify(pScreen);
 }

commit dc6efd99887c90bb14e066e46b69ca5ba19b6a09
Author: Jeremy Huddleston jerem...@apple.com
Date:   Sun May 22 09:32:57 2011 -0700

XQuartz: RandR: Don't crash if X11 is launched while there are no attached 
displays

If CG reports no displays when launching, we could crash in RandR.  
Instead, just
provide a fake 800x600 display until we are notified about displays being 
attached.

Signed-off-by: Jeremy Huddleston jerem...@apple.com
(cherry picked from commit 60af79e35ee8546a99d15a1358aac3deabfa22be)

diff --git a/hw/xquartz/quartz.c b/hw/xquartz/quartz.c
index 11e5a74..7de7138 100644
--- a/hw/xquartz/quartz.c
+++ b/hw/xquartz/quartz.c
@@ -464,11 +464,15 @@ void QuartzSpaceChanged(uint32_t space_id) {
 void QuartzCopyDisplayIDs(ScreenPtr pScreen,
   int displayCount, 

xorg-server: Changes to 'upstream-unstable'

2011-05-01 Thread Julien Cristau
Rebased ref, commits from common ancestor:
commit a73311f8304193f9245fb077f173bf1e1d52e040
Author: Jeremy Huddleston jerem...@apple.com
Date:   Fri Apr 15 17:58:57 2011 -0700

configure.ac: Bump verison to 1.10.1

Signed-off-by: Jeremy Huddleston jerem...@apple.com

diff --git a/configure.ac b/configure.ac
index d5d3e3b..756733e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,8 +26,8 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.57)
-AC_INIT([xorg-server], 1.10.0.902, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE=2011-04-08
+AC_INIT([xorg-server], 1.10.1, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE=2011-04-15
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])
 AM_MAINTAINER_MODE

commit 55f85d6cc28d737314f12958aac49d61b9476657
Author: Jeremy Huddleston jerem...@apple.com
Date:   Thu Apr 14 15:24:07 2011 -0700

Revert dix: release all buttons and keys before reattaching a device 
(#34182)

This patch introduced a regression, reverting for the 1.10.1 release. See
https://bugs.freedesktop.org/show_bug.cgi?id=36146

This reverts commit 81fbb96c54f78a7cd96433294ee003c7ef6a772a.

diff --git a/dix/devices.c b/dix/devices.c
index 84284e7..55f22cb 100644
--- a/dix/devices.c
+++ b/dix/devices.c
@@ -2380,46 +2380,6 @@ RecalculateMasterButtons(DeviceIntPtr slave)
 }
 
 /**
- * Generate release events for all keys/button currently down on this
- * device.
- */
-static void
-ReleaseButtonsAndKeys(DeviceIntPtr dev)
-{
-EventListPtreventlist = InitEventList(GetMaximumEventsNum());
-ButtonClassPtr  b = dev-button;
-KeyClassPtr k = dev-key;
-int i, j, nevents;
-
-if (!eventlist) /* no release events for you */
-return;
-
-/* Release all buttons */
-for (i = 0; b  i  b-numButtons; i++)
-{
-if (BitIsOn(b-down, i))
-{
-nevents = GetPointerEvents(eventlist, dev, ButtonRelease, i, 0, 
NULL);
-for (j = 0; j  nevents; j++)
-mieqProcessDeviceEvent(dev, 
(InternalEvent*)(eventlist+j)-event, NULL);
-}
-}
-
-/* Release all keys */
-for (i = 0; k  i  MAP_LENGTH; i++)
-{
-if (BitIsOn(k-down, i))
-{
-nevents = GetKeyboardEvents(eventlist, dev, KeyRelease, i);
-for (j = 0; j  nevents; j++)
-mieqProcessDeviceEvent(dev, 
(InternalEvent*)(eventlist+j)-event, NULL);
-}
-}
-
-FreeEventList(eventlist, GetMaximumEventsNum());
-}
-
-/**
  * Attach device 'dev' to device 'master'.
  * Client is set to the client that issued the request, or NULL if it comes
  * from some internal automatic pairing.
@@ -2452,8 +2412,6 @@ AttachDevice(ClientPtr client, DeviceIntPtr dev, 
DeviceIntPtr master)
 free(dev-spriteInfo-sprite);
 }
 
-ReleaseButtonsAndKeys(dev);
-
 oldmaster = dev-u.master;
 dev-u.master = master;
 

commit ec6e1e45627de2bb851f135df0507a360d0d99e6
Author: Jeremy Huddleston jerem...@apple.com
Date:   Fri Apr 8 16:36:32 2011 -0700

configure.ac: Version bumped to 1.10.0.902 (1.10.1 RC2)

Signed-off-by: Jeremy Huddleston jerem...@apple.com

diff --git a/configure.ac b/configure.ac
index 4a09bba..d5d3e3b 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,8 +26,8 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.57)
-AC_INIT([xorg-server], 1.10.0.901, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE=2011-03-29
+AC_INIT([xorg-server], 1.10.0.902, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE=2011-04-08
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])
 AM_MAINTAINER_MODE

commit 7379f7a7717a431ba4f8cf371aad9838aec7bec6
Author: Chase Douglas chase.doug...@canonical.com
Date:   Wed Apr 6 14:51:45 2011 -0400

Fix unset valuator handling for XI 1.x valuator events again

Set the valuator values for unset masked absolute valuators in the
internal device event. This ensures the values will always be correct in
getValuatorEvents even if the device has been removed.

Signed-off-by: Chase Douglas chase.doug...@canonical.com
Signed-off-by: Peter Hutterer peter.hutte...@who-t.net
(cherry picked from commit b28a1af55cf1ad2a882cc8cd73b77341dec7ff5a)

diff --git a/dix/eventconvert.c b/dix/eventconvert.c
index edcb9dd..a73c671 100644
--- a/dix/eventconvert.c
+++ b/dix/eventconvert.c
@@ -359,12 +359,12 @@ getValuatorEvents(DeviceEvent *ev, deviceValuator *xv)
 int i;
 int state = 0;
 int first_valuator, num_valuators;
-DeviceIntPtr dev = NULL;
 
 
 num_valuators = countValuators(ev, first_valuator);
 if (num_valuators  0)
 {
+DeviceIntPtr dev = NULL;
 dixLookupDevice(dev, ev-deviceid, serverClient, DixUseAccess);
 

xorg-server: Changes to 'upstream-unstable'

2011-03-25 Thread Cyril Brulebois
 configure.ac|4 ++--
 hw/xfree86/modes/xf86Crtc.c |   21 -
 hw/xfree86/vbe/vbe.c|2 +-
 3 files changed, 11 insertions(+), 16 deletions(-)

New commits:
commit b9c7485c68d0faf5c9f1f46fc7f39164b0e82a7a
Author: Jeremy Huddleston jerem...@apple.com
Date:   Thu Mar 17 13:54:05 2011 -0700

configure.ac: Bump version to 1.9.5

Signed-off-by: Jeremy Huddleston jerem...@apple.com

diff --git a/configure.ac b/configure.ac
index 76bf2c3..bf4e7f4 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,8 +26,8 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.57)
-AC_INIT([xorg-server], 1.9.4.901, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE=2011-03-04
+AC_INIT([xorg-server], 1.9.5, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE=2011-03-17
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])
 AM_MAINTAINER_MODE

commit db9321b33047dadc791246c9830abcbd05ef76d1
Author: Erkki Seppälä erkki.sepp...@vincit.fi
Date:   Thu Mar 10 11:40:40 2011 +0200

xfree86/modes: Fixed memory leak in xf86InitialConfiguration

There were two memory leaks in the function: one was the lack of free
for enabled, the other was the full lack of releasing anything when
configuration was too small. The first issue was fixed by adding the
missing free, the other was addressed by replacing the duplicate
memory releasing sequences with one that is gotoed into.

Reviewed-by: Peter Hutterer peter.hutte...@who-t.net
Reviewed-by: Rami Ylimäki rami.ylim...@vincit.fi
Signed-off-by: Erkki Seppälä erkki.sepp...@vincit.fi
Signed-off-by: Keith Packard kei...@keithp.com
(cherry picked from commit d3adf2d9350bee4125107e2ea1ed0c51bb736562)

diff --git a/hw/xfree86/modes/xf86Crtc.c b/hw/xfree86/modes/xf86Crtc.c
index 30742ff..4db4d22 100644
--- a/hw/xfree86/modes/xf86Crtc.c
+++ b/hw/xfree86/modes/xf86Crtc.c
@@ -2355,6 +2355,7 @@ xf86InitialConfiguration (ScrnInfoPtr scrn, Bool canGrow)
 inti = scrn-scrnIndex;
 Bool have_outputs = TRUE;
 Bool ret;
+Bool success = FALSE;
 
 /* Set up the device options */
 config-options = xnfalloc (sizeof (xf86DeviceOptions));
@@ -2413,11 +2414,7 @@ xf86InitialConfiguration (ScrnInfoPtr scrn, Bool canGrow)
  * Set the position of each output
  */
 if (!xf86InitialOutputPositions (scrn, modes))
-{
-   free(crtcs);
-   free(modes);
-   return FALSE;
-}
+   goto bailout;
 
 /*
  * Set initial panning of each output
@@ -2428,11 +2425,7 @@ xf86InitialConfiguration (ScrnInfoPtr scrn, Bool canGrow)
  * Assign CRTCs to fit output configuration
  */
 if (have_outputs  !xf86PickCrtcs (scrn, crtcs, modes, 0, width, height))
-{
-   free(crtcs);
-   free(modes);
-   return FALSE;
-}
+   goto bailout;
 
 /* XXX override xf86 common frame computation code */
 
@@ -2509,7 +2502,7 @@ xf86InitialConfiguration (ScrnInfoPtr scrn, Bool canGrow)
  * Make sure the configuration isn't too small.
  */
 if (width  config-minWidth || height  config-minHeight)
-   return FALSE;
+   goto bailout;
 
 /*
  * Limit the crtc config to virtual[XY] if the driver can't grow the
@@ -2532,10 +2525,12 @@ xf86InitialConfiguration (ScrnInfoPtr scrn, Bool 
canGrow)
   xf86CVTMode(width, height, 60, 0, 0));
 }
 
-
+success = TRUE;
+ bailout:
 free(crtcs);
 free(modes);
-return TRUE;
+free(enabled);
+return success;
 }
 
 /*

commit 8ffaef2ebd2611e2eed4ef97350c3a34508f5252
Author: Adam Jackson a...@redhat.com
Date:   Thu Feb 24 16:06:34 2011 -0500

vbe: Fix malloc size bug

v2: Slightly more obvious sizing math.

==14882== Invalid write of size 2
==14882==at 0x6750267: VBEGetVBEInfo (vbe.c:400)
==14882==by 0x6142064: ??? (in 
/usr/lib64/xorg/modules/drivers/vesa_drv.so)
==14882==by 0x471895: InitOutput (xf86Init.c:519)
==14882==by 0x422778: main (main.c:205)
==14882==  Address 0x4f32fa8 is 72 bytes inside a block of size 73 alloc'd
==14882==at 0x4A0640D: malloc (vg_replace_malloc.c:236)
==14882==by 0x675024B: VBEGetVBEInfo (vbe.c:398)
==14882==by 0x6142064: ??? (in 
/usr/lib64/xorg/modules/drivers/vesa_drv.so)
==14882==by 0x471895: InitOutput (xf86Init.c:519)
==14882==by 0x422778: main (main.c:205)

Reviewed-by: Mark Kettenis kette...@openbsd.org
Reviewed-by: Alan Coopersmith alan.coopersm...@oracle.com
Signed-off-by: Adam Jackson a...@redhat.com
(cherry picked from commit d8caa782009abf4dc17b945e325e83fda299a534)

diff --git a/hw/xfree86/vbe/vbe.c b/hw/xfree86/vbe/vbe.c
index 7a64a4a..1d3775b 100644
--- a/hw/xfree86/vbe/vbe.c
+++ b/hw/xfree86/vbe/vbe.c
@@ -395,7 +395,7 @@ 

xorg-server: Changes to 'upstream-unstable'

2011-03-05 Thread Cyril Brulebois
 Xext/xselinux_ext.c  |6 
 configure.ac |4 
 exa/exa_mixed.c  |9 
 glx/glxcmds.c|2 
 hw/xfree86/modes/xf86Crtc.c  |   12 
 hw/xquartz/X11Application.h  |3 
 hw/xquartz/X11Application.m  |   29 
 hw/xquartz/bundle/Info.plist.cpp |2 
 hw/xquartz/bundle/Resources/English.lproj/Localizable.strings|binary
 hw/xquartz/bundle/Resources/French.lproj/locversion.plist|4 
 hw/xquartz/bundle/Resources/French.lproj/main.nib/designable.nib |  441 
++
 hw/xquartz/bundle/Resources/French.lproj/main.nib/keyedobjects.nib   |binary
 hw/xquartz/bundle/Resources/German.lproj/locversion.plist|4 
 hw/xquartz/bundle/Resources/German.lproj/main.nib/designable.nib |  360 
++--
 hw/xquartz/bundle/Resources/German.lproj/main.nib/keyedobjects.nib   |binary
 hw/xquartz/bundle/Resources/Japanese.lproj/locversion.plist  |4 
 hw/xquartz/bundle/Resources/Japanese.lproj/main.nib/designable.nib   |  323 
++-
 hw/xquartz/bundle/Resources/Japanese.lproj/main.nib/keyedobjects.nib |binary
 hw/xquartz/pbproxy/x-selection.h |2 
 hw/xquartz/quartz.c  |2 
 hw/xquartz/quartz.h  |2 
 hw/xquartz/quartzRandR.c |   27 
 hw/xquartz/xpr/xprAppleWM.c  |2 
 hw/xquartz/xpr/xprFrame.c|4 
 hw/xquartz/xpr/xprScreen.c   |   34 
 record/record.c  |6 
 26 files changed, 1013 insertions(+), 269 deletions(-)

New commits:
commit 424a31f93e0aa1bb394c6ade7ae029f90f70
Author: Jeremy Huddleston jerem...@apple.com
Date:   Fri Mar 4 13:42:45 2011 -0800

1.9.4.901 (1.9.5 RC1)

Signed-off-by: Jeremy Huddleston jerem...@apple.com

diff --git a/configure.ac b/configure.ac
index b2fbb5f..76bf2c3 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,8 +26,8 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.57)
-AC_INIT([xorg-server], 1.9.4, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE=2011-02-04
+AC_INIT([xorg-server], 1.9.4.901, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE=2011-03-04
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])
 AM_MAINTAINER_MODE

commit 457728d723a7d93cd88691dd920bf42a7540616a
Author: Julien Cristau jcris...@debian.org
Date:   Sat Jul 3 19:42:26 2010 +0100

glx: make sure screen is non-negative in validGlxScreen

Reviewed-by: Adam Jackson a...@redhat.com
Reviewed-by: Kristian Høgsberg k...@bitplanet.net
Reviewed-by: Daniel Stone dan...@fooishbar.org
Signed-off-by: Julien Cristau jcris...@debian.org
(cherry picked from commit 3f0d3f4d97bce75c1828635c322b6560a45a037f)

diff --git a/glx/glxcmds.c b/glx/glxcmds.c
index 8d13c15..9e32d6c 100644
--- a/glx/glxcmds.c
+++ b/glx/glxcmds.c
@@ -57,7 +57,7 @@ validGlxScreen(ClientPtr client, int screen, __GLXscreen 
**pGlxScreen, int *err)
 /*
 ** Check if screen exists.
 */
-if (screen = screenInfo.numScreens) {
+if (screen  0 || screen = screenInfo.numScreens) {
client-errorValue = screen;
*err = BadValue;
return FALSE;

commit 8a18d18bb31933d8dd0fe63cd293d7ae6711abcc
Author: Evan Broder ebro...@mokafive.com
Date:   Tue Feb 1 16:09:50 2011 -0800

xfree86/modes: Be sure to only use new EDID for physical output dimensions

The EDID processing regards physical dimensions of 0mm x 0mm as
invalid. Previously the old values for height and width would be
preserved if none of the physical dimension specifications in the new
EDID were considered valid.

This will come up in particular if first a monitor is connected to an
output, and then a projector is connected. Since projectors generally
report physical dimensions of 0mm x 0mm, this would result in the
projector claiming to have the physical dimensions of the monitor.

Signed-off-by: Evan Broder ebro...@mokafive.com
Reviewed-by: Adam Jackson a...@redhat.com
Signed-off-by: Keith Packard kei...@keithp.com
(cherry picked from commit 12b0f7df2caa78d68b453aaa91248bb3577fd724)

diff --git a/hw/xfree86/modes/xf86Crtc.c b/hw/xfree86/modes/xf86Crtc.c
index dd8ccad..30742ff 100644
--- a/hw/xfree86/modes/xf86Crtc.c
+++ b/hw/xfree86/modes/xf86Crtc.c
@@ -2976,6 +2976,8 @@ 

xorg-server: Changes to 'upstream-unstable'

2011-02-16 Thread Cyril Brulebois
Rebased ref, commits from common ancestor:
commit 0a4b0de9afeab0cd47e1e297d5b5d42bfda0a5a7
Author: Maarten Maathuis madman2...@gmail.com
Date:   Sun Jan 30 14:06:15 2011 +0100

exa: Only call driver FinishAccess hook if PrepareAccess hook succeeded.

Reviewed-by: Michel Dänzer mic...@daenzer.net
Signed-off-by: Maarten Maathuis madman2...@gmail.com
Signed-off-by: Keith Packard kei...@keithp.com
(cherry picked from commit af87f6367ef733d1a4f3cfca4eeb92bfd84c2b6f)

diff --git a/exa/exa.c b/exa/exa.c
index 8adf847..a4e294a 100644
--- a/exa/exa.c
+++ b/exa/exa.c
@@ -421,7 +421,8 @@ exaFinishAccess(DrawablePtr pDrawable, int index)
 /* We always hide the devPrivate.ptr. */
 pPixmap-devPrivate.ptr = NULL;
 
-if (!pExaScr-info-FinishAccess || !exaPixmapHasGpuCopy(pPixmap))
+/* Only call FinishAccess if PrepareAccess was called and succeeded. */
+if (!pExaScr-info-FinishAccess || !pExaScr-access[i].retval)
return;
 
 if (i = EXA_PREPARE_AUX_DEST 

commit ce83d1bd5a7dee70cc1616b583fbd3ce2392f0a0
Author: Jeremy Huddleston jerem...@apple.com
Date:   Fri Feb 4 11:35:58 2011 -0800

xorg-server 1.9.4

Signed-off-by: Jeremy Huddleston jerem...@apple.com

diff --git a/configure.ac b/configure.ac
index a977c7a..b2fbb5f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,8 +26,8 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.57)
-AC_INIT([xorg-server], 1.9.3.902, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE=2011-01-30
+AC_INIT([xorg-server], 1.9.4, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE=2011-02-04
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])
 AM_MAINTAINER_MODE

commit df12f4a4d9afe819fd3ae1ec8aaa5a7ec9d6567f
Author: Jeremy Huddleston jerem...@apple.com
Date:   Sun Jan 30 17:07:25 2011 -0800

xorg-server 1.9.3.902

Signed-off-by: Jeremy Huddleston jerem...@apple.com

diff --git a/configure.ac b/configure.ac
index 02320c5..a977c7a 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,8 +26,8 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.57)
-AC_INIT([xorg-server], 1.9.3.901, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE=2011-01-07
+AC_INIT([xorg-server], 1.9.3.902, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE=2011-01-30
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])
 AM_MAINTAINER_MODE

commit 79a367d6e3075f31c89ce9fe4189ffe1ca649e37
Author: Jeremy Huddleston jerem...@apple.com
Date:   Fri Jan 28 21:13:38 2011 -0800

XQuartz: Localization Updates

Signed-off-by: Jeremy Huddleston jerem...@apple.com
(cherry picked from commit 8c1f75a1d4cb5a34b4d10f3f5068bccc4356f31a)

diff --git a/hw/xquartz/bundle/Resources/Dutch.lproj/locversion.plist 
b/hw/xquartz/bundle/Resources/Dutch.lproj/locversion.plist
index b512569..f950336 100644
--- a/hw/xquartz/bundle/Resources/Dutch.lproj/locversion.plist
+++ b/hw/xquartz/bundle/Resources/Dutch.lproj/locversion.plist
@@ -3,12 +3,12 @@
 plist version=1.0
 dict
keyLprojCompatibleVersion/key
-   string97/string
+   string101/string
keyLprojLocale/key
stringnl/string
keyLprojRevisionLevel/key
string1/string
keyLprojVersion/key
-   string97/string
+   string101/string
 /dict
 /plist
diff --git a/hw/xquartz/bundle/Resources/Dutch.lproj/main.nib/designable.nib 
b/hw/xquartz/bundle/Resources/Dutch.lproj/main.nib/designable.nib
index e95db0c..4b030d3 100644
--- a/hw/xquartz/bundle/Resources/Dutch.lproj/main.nib/designable.nib
+++ b/hw/xquartz/bundle/Resources/Dutch.lproj/main.nib/designable.nib
@@ -2,23 +2,22 @@
 archive type=com.apple.InterfaceBuilder3.Cocoa.XIB version=8.00
data
int key=IBDocument.SystemTarget1040/int
-   string key=IBDocument.SystemVersion11A79a/string
-   string key=IBDocument.InterfaceBuilderVersion784/string
-   string key=IBDocument.AppKitVersion1059/string
-   string key=IBDocument.HIToolboxVersion478.00/string
+   string key=IBDocument.SystemVersion11A289/string
+   string key=IBDocument.InterfaceBuilderVersion851/string
+   string key=IBDocument.AppKitVersion1094.2/string
+   string key=IBDocument.HIToolboxVersion521.00/string
object class=NSMutableDictionary 
key=IBDocument.PluginVersions
string 
key=NS.key.0com.apple.InterfaceBuilder.CocoaPlugin/string
-   string key=NS.object.0784/string
+   string key=NS.object.0851/string
/object
-   array class=NSMutableArray key=IBDocument.EditedObjectIDs
-   integer value=348/
-   integer value=285/
-   

xorg-server: Changes to 'upstream-unstable'

2011-01-11 Thread Cyril Brulebois
 Xext/sync.c  |5 +-
 exa/exa_accel.c  |2 
 exa/exa_unaccel.c|2 
 hw/xfree86/modes/xf86EdidModes.c |5 ++
 hw/xfree86/modes/xf86Modes.c |   33 +++
 hw/xfree86/x86emu/ops.c  |   83 +++
 include/protocol-versions.h  |4 +
 randr/rrscreen.c |   12 +
 render/render.c  |4 -
 9 files changed, 114 insertions(+), 36 deletions(-)

New commits:
commit 2fd67c34549f1703e8ca522f92be518b18f90e81
Author: Ville Syrjälä ville.syrj...@nokia.com
Date:   Thu Dec 16 18:22:13 2010 +0200

xfree86/modes: Take rotation into account when checking mode size

Assume that a mode can be used in either landscape or portrait
orientation. I suppose the correct thing to do would be to
collect all the supported rotations from the CRTCs that can be used
with a specific output, but that information doesn't seem to be
readily available when these checks are done. So just assume that
either orientation is fine.

Signed-off-by: Ville Syrjälä ville.syrj...@nokia.com
Reviewed-by: Adam Jackson a...@redhat.com
(cherry picked from commit 2e781457d43ec4bf0d633257ac6852cde3b00541)
(cherry picked from commit aec278eb65fe1ca98ab551a8c3873a7195bad540)

diff --git a/hw/xfree86/modes/xf86Modes.c b/hw/xfree86/modes/xf86Modes.c
index 862a473..a107001 100644
--- a/hw/xfree86/modes/xf86Modes.c
+++ b/hw/xfree86/modes/xf86Modes.c
@@ -362,15 +362,32 @@ xf86ValidateModesSize(ScrnInfoPtr pScrn, DisplayModePtr 
modeList,
 {
 DisplayModePtr mode;
 
-for (mode = modeList; mode != NULL; mode = mode-next) {
-   if (maxPitch  0  mode-HDisplay  maxPitch)
-   mode-status = MODE_BAD_WIDTH;
-
-   if (maxX  0  mode-HDisplay  maxX)
-   mode-status = MODE_VIRTUAL_X;
+if (maxPitch = 0)
+   maxPitch = MAXINT;
+if (maxX = 0)
+   maxX = MAXINT;
+if (maxY = 0)
+   maxY = MAXINT;
 
-   if (maxY  0  mode-VDisplay  maxY)
-   mode-status = MODE_VIRTUAL_Y;
+for (mode = modeList; mode != NULL; mode = mode-next) {
+   if ((xf86ModeWidth(mode, RR_Rotate_0)  maxPitch ||
+xf86ModeWidth(mode, RR_Rotate_0)  maxX ||
+xf86ModeHeight(mode, RR_Rotate_0)  maxY) 
+   (xf86ModeWidth(mode, RR_Rotate_90)  maxPitch ||
+xf86ModeWidth(mode, RR_Rotate_90)  maxX ||
+xf86ModeHeight(mode, RR_Rotate_90)  maxY)) {
+   if (xf86ModeWidth(mode, RR_Rotate_0)  maxPitch ||
+   xf86ModeWidth(mode, RR_Rotate_90)  maxPitch)
+   mode-status = MODE_BAD_WIDTH;
+
+   if (xf86ModeWidth(mode, RR_Rotate_0)  maxX ||
+   xf86ModeWidth(mode, RR_Rotate_90)  maxX)
+   mode-status = MODE_VIRTUAL_X;
+
+   if (xf86ModeHeight(mode, RR_Rotate_0)  maxY ||
+   xf86ModeHeight(mode, RR_Rotate_90)  maxY)
+   mode-status = MODE_VIRTUAL_Y;
+   }
 
if (mode-next == modeList)
break;

commit 6a6d907e7057cadbd80572119c09732385cd
Author: Tiago Vignatti tiago.vigna...@nokia.com
Date:   Fri Dec 17 16:09:35 2010 +0200

randr: check for virtual size limits before set crtc

Return a error if the screen is configured to an invalid size.

Signed-off-by: Tiago Vignatti tiago.vigna...@nokia.com
Reviewed-by: Adam Jackson a...@redhat.com
Reviewed-by: Daniel Stone dan...@fooishbar.org
Signed-off-by: Keith Packard kei...@keithp.com
(cherry picked from commit d1107918d4626268803b54033a07405122278e7f)

diff --git a/randr/rrscreen.c b/randr/rrscreen.c
index 630ff57..0fee1f5 100644
--- a/randr/rrscreen.c
+++ b/randr/rrscreen.c
@@ -921,6 +921,18 @@ ProcRRSetScreenConfig (ClientPtr client)
width = mode-mode.height;
height = mode-mode.width;
 }
+
+if (width  pScrPriv-minWidth || pScrPriv-maxWidth  width) {
+   client-errorValue = width;
+   free(pData);
+   return BadValue;
+}
+if (height  pScrPriv-minHeight || pScrPriv-maxHeight  height) {
+   client-errorValue = height;
+   free(pData);
+   return BadValue;
+}
+
 if (width != pScreen-width || height != pScreen-height)
 {
int c;

commit 5b979a13df331ad28ce7f1c90d6e059f6fd4eedb
Author: Michel Dänzer daen...@vmware.com
Date:   Wed Dec 22 11:45:36 2010 +0100

EXA: Fix crash with fill using 1x1 tile of depth  8 (bug #24703).

Fixes http://bugs.freedesktop.org/show_bug.cgi?id=24703 .

Signed-off-by: Michel Dänzer daen...@vmware.com
Reviewed-by: Dave Airlie airl...@redhat.com
Signed-off-by: Keith Packard kei...@keithp.com
(cherry picked from commit e06fa804009798ea95efa8babaabb0228dfdfe65)

diff --git a/exa/exa_accel.c b/exa/exa_accel.c
index d4eae89..76012d3 100644
--- a/exa/exa_accel.c
+++ b/exa/exa_accel.c
@@ -1049,6 +1049,8 @@ exaFillRegionSolid (DrawablePtr   pDrawable, RegionPtr 
pRegion, 

xorg-server: Changes to 'upstream-unstable'

2010-12-01 Thread Julien Cristau
 hw/dmx/glxProxy/glxcmds.c|6 ++--
 hw/dmx/glxProxy/glxcmdsswap.c|2 -
 hw/kdrive/ephyr/ephyrdriext.c|2 -
 hw/xfree86/dixmods/extmod/xf86dga2.c |   46 +--
 hw/xfree86/modes/xf86RandR12.c   |   10 +++
 5 files changed, 38 insertions(+), 28 deletions(-)

New commits:
commit 6f7f3e2b799984e1b8aade89726dc226fc0b89ac
Author: Cyril Brulebois k...@debian.org
Date:   Wed Dec 1 14:12:55 2010 +0100

Fix screen number checks.

screenInfo.numScreens is not a valid screen number, they go from 0 to
numScreens - 1.

Signed-off-by: Cyril Brulebois k...@debian.org
Reviewed-by: Alex Deucher alexdeuc...@gmail.com
Signed-off-by: Keith Packard kei...@keithp.com
(cherry picked from commit 279ef1ffd787dba2f0d5056849b9cb15d36aa3eb)

diff --git a/hw/dmx/glxProxy/glxcmds.c b/hw/dmx/glxProxy/glxcmds.c
index 31fd431..d790b71 100644
--- a/hw/dmx/glxProxy/glxcmds.c
+++ b/hw/dmx/glxProxy/glxcmds.c
@@ -1536,7 +1536,7 @@ int __glXGetVisualConfigs(__GLXclientState *cl, GLbyte 
*pc)
 int i, p;
 
 screen = req-screen;
-if (screen  screenInfo.numScreens) {
+if (screen = screenInfo.numScreens) {
/* The client library must send a valid screen number. */
client-errorValue = screen;
return BadValue;
@@ -2685,7 +2685,7 @@ int __glXGetFBConfigs(__GLXclientState *cl, GLbyte *pc)
 int numFBConfigs, i, p;
 __GLXscreenInfo *pGlxScreen;
 
-if (screen  screenInfo.numScreens) {
+if (screen = screenInfo.numScreens) {
/* The client library must send a valid screen number. */
client-errorValue = screen;
return BadValue;
@@ -3106,7 +3106,7 @@ int __glXCreatePbuffer(__GLXclientState *cl, GLbyte *pc)
/*
 ** Look up screen and FBConfig.
 */
-if (screen  screenInfo.numScreens) {
+if (screen = screenInfo.numScreens) {
 /* The client library must send a valid screen number. */
 client-errorValue = screen;
 return BadValue;
diff --git a/hw/dmx/glxProxy/glxcmdsswap.c b/hw/dmx/glxProxy/glxcmdsswap.c
index b3720f6..780ca42 100644
--- a/hw/dmx/glxProxy/glxcmdsswap.c
+++ b/hw/dmx/glxProxy/glxcmdsswap.c
@@ -251,7 +251,7 @@ int __glXSwapGetVisualConfigs(__GLXclientState *cl, GLbyte 
*pc)
 
 __GLX_SWAP_INT(req-screen);
 screen = req-screen;
-if (screen  screenInfo.numScreens) {
+if (screen = screenInfo.numScreens) {
/* The client library must send a valid screen number. */
client-errorValue = screen;
return BadValue;
diff --git a/hw/kdrive/ephyr/ephyrdriext.c b/hw/kdrive/ephyr/ephyrdriext.c
index 231b098..9f38908 100644
--- a/hw/kdrive/ephyr/ephyrdriext.c
+++ b/hw/kdrive/ephyr/ephyrdriext.c
@@ -470,7 +470,7 @@ EphyrDuplicateVisual (unsigned int a_screen,
 int i=0 ;
 
 EPHYR_LOG (enter\n) ; 
-if (a_screen  screenInfo.numScreens) {
+if (a_screen = screenInfo.numScreens) {
 EPHYR_LOG_ERROR (bad screen number\n) ;
 goto out;
 }

commit bcab9213fbafa3091d2f5c831bb668cacaec5f8b
Author: Julien Cristau jcris...@debian.org
Date:   Tue Nov 30 17:23:10 2010 +0100

DGA: fix screen number check

screenInfo.numScreens is not a valid screen number, they go from 0 to
numScreens - 1.

Signed-off-by: Julien Cristau jcris...@debian.org
Reviewed-by: Keith Packard kei...@keithp.com
Signed-off-by: Keith Packard kei...@keithp.com
(cherry picked from commit 8684543021b9b1aa165b1bc69bc58685cb5942c1)

diff --git a/hw/xfree86/dixmods/extmod/xf86dga2.c 
b/hw/xfree86/dixmods/extmod/xf86dga2.c
index 5367bcc..3742c2b 100644
--- a/hw/xfree86/dixmods/extmod/xf86dga2.c
+++ b/hw/xfree86/dixmods/extmod/xf86dga2.c
@@ -139,7 +139,7 @@ ProcXDGAOpenFramebuffer(ClientPtr client)
 char *deviceName;
 int nameSize;
 
-if (stuff-screen  screenInfo.numScreens)
+if (stuff-screen = screenInfo.numScreens)
 return BadValue;
 
 if (!DGAAvailable(stuff-screen))
@@ -173,7 +173,7 @@ ProcXDGACloseFramebuffer(ClientPtr client)
 {
 REQUEST(xXDGACloseFramebufferReq);
 
-if (stuff-screen  screenInfo.numScreens)
+if (stuff-screen = screenInfo.numScreens)
 return BadValue;
 
 if (!DGAAvailable(stuff-screen))
@@ -195,7 +195,7 @@ ProcXDGAQueryModes(ClientPtr client)
 xXDGAModeInfo info;
 XDGAModePtr mode;
 
-if (stuff-screen  screenInfo.numScreens)
+if (stuff-screen = screenInfo.numScreens)
 return BadValue;
 
 REQUEST_SIZE_MATCH(xXDGAQueryModesReq);
@@ -313,7 +313,7 @@ ProcXDGASetMode(ClientPtr client)
 PixmapPtr pPix;
 int size;
 
-if (stuff-screen  screenInfo.numScreens)
+if (stuff-screen = screenInfo.numScreens)
 return BadValue;
 
 REQUEST_SIZE_MATCH(xXDGASetModeReq);
@@ -402,7 +402,7 @@ ProcXDGASetViewport(ClientPtr client)
 {
 REQUEST(xXDGASetViewportReq);
 
-if (stuff-screen  screenInfo.numScreens)
+if (stuff-screen = screenInfo.numScreens)
 return BadValue;

xorg-server: Changes to 'upstream-unstable'

2010-11-18 Thread Julien Cristau
 Xi/exevents.c  |4 ---
 Xi/extinit.c   |3 +-
 Xi/xiproperty.c|9 +++
 Xi/xiproperty.h|3 ++
 dix/devices.c  |4 +--
 dix/events.c   |   52 +
 dix/getevents.c|2 -
 dix/main.c |4 ---
 hw/xfree86/common/xf86Helper.c |7 +
 hw/xfree86/ddc/ddc.c   |4 ---
 hw/xfree86/modes/xf86Crtc.c|4 +--
 hw/xfree86/modes/xf86Cursors.c |9 ---
 include/eventstr.h |2 -
 os/io.c|   27 ++---
 os/osdep.h |1 
 randr/rrtransform.c|   28 +++---
 xkb/xkbUtils.c |   41 ++--
 17 files changed, 114 insertions(+), 90 deletions(-)

New commits:
commit c9bca39848add875a76cf2434aabbadb97ddd721
Author: Peter Hutterer peter.hutte...@who-t.net
Date:   Wed Jun 9 17:10:57 2010 +1000

Xi: move property reset from extension shutdown to init.

If any part of the stack calls XIGetKnownProperty during device shutdown
the property is re-initialized before the server generation resets, leaving
the value invalid again.

Move the reset to the extension init which happens before input devices are
initialized before the first property is requested.

Signed-off-by: Peter Hutterer peter.hutte...@who-t.net
Reviewed-by: Julien Cristau jcris...@debian.org
(cherry picked from commit 5cd11d2356d153840f1b429bdb8284367f8dc468)

diff --git a/Xi/extinit.c b/Xi/extinit.c
index d0fd2f6..daa79f6 100644
--- a/Xi/extinit.c
+++ b/Xi/extinit.c
@@ -1123,8 +1123,6 @@ RestoreExtensionEvents(void)
 static void
 IResetProc(ExtensionEntry * unused)
 {
-XIResetProperties();
-
 ReplySwapVector[IReqCode] = ReplyNotSwappd;
 EventSwapVector[DeviceValuator] = NotImplemented;
 EventSwapVector[DeviceKeyPress] = NotImplemented;
@@ -1303,6 +1301,8 @@ XInputExtensionInit(void)
 
inputInfo.all_devices = xi_all_devices;
inputInfo.all_master_devices = xi_all_master_devices;
+
+   XIResetProperties();
 } else {
FatalError(IExtensionInit: AddExtensions failed\n);
 }

commit 266dc682f623a2aca6654c42164a8d8b9362c53b
Author: Peter Hutterer peter.hutte...@who-t.net
Date:   Fri May 7 16:22:12 2010 +1000

Xi: reset the known properties at the end of the server generation.

Properties allocated through XIGetKnownProperty() aren't reset on the second
server generation but keep the old value. As a result, wrong Atoms are
supplied to the driver, resulting in potential data corruption or weird
error message.

Reproducible by running xlsatom | grep FLOAT twice on a plain X server.
The second X server generation won't have the FLOAT atom defined anymore,
despite the users of this atom not noticing any errors.

Signed-off-by: Peter Hutterer peter.hutte...@who-t.net
Reviewed-by: Julien Cristau jcris...@debian.org
Signed-off-by: Keith Packard kei...@keithp.com
(cherry picked from commit 9802839d35aaf788790f1d0e8300db4693a70096)

diff --git a/Xi/extinit.c b/Xi/extinit.c
index 0c12919..d0fd2f6 100644
--- a/Xi/extinit.c
+++ b/Xi/extinit.c
@@ -1123,6 +1123,7 @@ RestoreExtensionEvents(void)
 static void
 IResetProc(ExtensionEntry * unused)
 {
+XIResetProperties();
 
 ReplySwapVector[IReqCode] = ReplyNotSwappd;
 EventSwapVector[DeviceValuator] = NotImplemented;
diff --git a/Xi/xiproperty.c b/Xi/xiproperty.c
index ea66c54..2482171 100644
--- a/Xi/xiproperty.c
+++ b/Xi/xiproperty.c
@@ -392,6 +392,15 @@ XIGetKnownProperty(char *name)
 return 0;
 }
 
+void
+XIResetProperties(void)
+{
+int i;
+
+for (i = 0; i  (sizeof(dev_properties)/sizeof(struct dev_properties)); 
i++)
+dev_properties[i].type = None;
+}
+
 /**
  * Convert the given property's value(s) into @nelem_return integer values and
  * store them in @buf_return. If @nelem_return is larger than the number of
diff --git a/Xi/xiproperty.h b/Xi/xiproperty.h
index 69b41fa..d8b8863 100644
--- a/Xi/xiproperty.h
+++ b/Xi/xiproperty.h
@@ -62,4 +62,7 @@ void SRepXIListProperties(ClientPtr client, int size,
   xXIListPropertiesReply *rep);
 void SRepXIGetProperty(ClientPtr client, int size,
xXIGetPropertyReply *rep);
+
+void XIResetProperties(void);
+
 #endif /* XIPROPERTY_H */

commit 240e7c50cecdcc0ce6087e141f11f165d828a7e9
Author: Adam Jackson a...@redhat.com
Date:   Mon Oct 18 15:42:54 2010 -0400

ddc: Don't probe for DDC/CI or EEPROM

For whatever reason, some (broken) monitors will crash if you do this.
We're not actually using this information for anything, so let's just
not do it.

Originally reported as http://bugzilla.redhat.com/620333

Reviewed-by: Alex Deucher alexdeuc...@gmail.com
Signed-off-by: Adam 

xorg-server: Changes to 'upstream-unstable'

2010-09-08 Thread Julien Cristau
 glx/glxdri.c   |   17 +++--
 glx/glxdri2.c  |   17 +++--
 hw/xfree86/common/xf86VGAarbiter.c |   10 +-
 hw/xfree86/common/xf86cmap.c   |8 +++-
 hw/xfree86/common/xf86xv.c |8 
 hw/xfree86/modes/xf86Crtc.c|2 ++
 hw/xfree86/modes/xf86RandR12.c |   26 +-
 hw/xfree86/modes/xf86RandR12.h |1 +
 hw/xfree86/shadowfb/shadow.c   |   11 ++-
 hw/xfree86/xaa/xaaInit.c   |   12 +++-
 10 files changed, 103 insertions(+), 9 deletions(-)

New commits:
commit 3336e1f7f3d7a0e37cc75f7edd96524dd6cf228a
Author: Keith Packard kei...@keithp.com
Date:   Mon Jul 12 16:01:34 2010 -0700

Unwrap/rewrap EnterVT/LeaveVT completely, Fixes 28998

Because some EnterVT code needs to remove it self from the
call chain, we need to fix all of the wrappers to correctly
unwrap/rewrap during the call chain. This is a follow-on to the fix
for bug 27114 in commit 68a9ee8370e6f9b38218376ac92d5130a5b0ef1e.

Signed-off-by: Keith Packard kei...@keithp.com
Tested-by: Jesse Barnes jesse.bar...@intel.com
Reviewed-by: Daniel Stone dan...@fooishbar.org
Reviewed-by: Tiago Vignatti tiago.vigna...@nokia.com
(cherry picked from commit d75e8146c414bfd512ba5dbd4a83acb334bbe19b, and
conflict from b618705 fixed up)
Signed-off-by: Julien Cristau jcris...@debian.org

diff --git a/glx/glxdri.c b/glx/glxdri.c
index 6122653..06681fa 100644
--- a/glx/glxdri.c
+++ b/glx/glxdri.c
@@ -863,12 +863,21 @@ static const char dri_driver_path[] = DRI_DRIVER_PATH;
 static Bool
 glxDRIEnterVT (int index, int flags)
 {
+ScrnInfoPtr scrn = xf86Screens[index];
+Bool   ret;
 __GLXDRIscreen *screen = (__GLXDRIscreen *) 
glxGetScreen(screenInfo.screens[index]);
 
 LogMessage(X_INFO, AIGLX: Resuming AIGLX clients after VT switch\n);
 
-if (!(*screen-enterVT) (index, flags))
+scrn-EnterVT = screen-enterVT;
+
+ret = scrn-EnterVT (index, flags);
+
+screen-enterVT = scrn-EnterVT;
+scrn-EnterVT = glxDRIEnterVT;
+
+if (!ret)
return FALSE;
 
 glxResumeClients();
@@ -879,6 +888,7 @@ glxDRIEnterVT (int index, int flags)
 static void
 glxDRILeaveVT (int index, int flags)
 {
+ScrnInfoPtr scrn = xf86Screens[index];
 __GLXDRIscreen *screen = (__GLXDRIscreen *)
glxGetScreen(screenInfo.screens[index]);
 
@@ -886,7 +896,10 @@ glxDRILeaveVT (int index, int flags)
 
 glxSuspendClients();
 
-return (*screen-leaveVT) (index, flags);
+scrn-LeaveVT = screen-leaveVT;
+(*screen-leaveVT) (index, flags);
+screen-leaveVT = scrn-LeaveVT;
+scrn-LeaveVT = glxDRILeaveVT;
 }
 
 static void
diff --git a/glx/glxdri2.c b/glx/glxdri2.c
index ed7fb4c..249df79 100644
--- a/glx/glxdri2.c
+++ b/glx/glxdri2.c
@@ -512,12 +512,21 @@ static const char dri_driver_path[] = DRI_DRIVER_PATH;
 static Bool
 glxDRIEnterVT (int index, int flags)
 {
+ScrnInfoPtr scrn = xf86Screens[index];
+Bool   ret;
 __GLXDRIscreen *screen = (__GLXDRIscreen *) 
glxGetScreen(screenInfo.screens[index]);
 
 LogMessage(X_INFO, AIGLX: Resuming AIGLX clients after VT switch\n);
 
-if (!(*screen-enterVT) (index, flags))
+scrn-EnterVT = screen-enterVT;
+
+ret = scrn-EnterVT (index, flags);
+
+screen-enterVT = scrn-EnterVT;
+scrn-EnterVT = glxDRIEnterVT;
+
+if (!ret)
return FALSE;
 
 glxResumeClients();
@@ -528,6 +537,7 @@ glxDRIEnterVT (int index, int flags)
 static void
 glxDRILeaveVT (int index, int flags)
 {
+ScrnInfoPtr scrn = xf86Screens[index];
 __GLXDRIscreen *screen = (__GLXDRIscreen *)
glxGetScreen(screenInfo.screens[index]);
 
@@ -535,7 +545,10 @@ glxDRILeaveVT (int index, int flags)
 
 glxSuspendClients();
 
-return (*screen-leaveVT) (index, flags);
+scrn-LeaveVT = screen-leaveVT;
+(*screen-leaveVT) (index, flags);
+screen-leaveVT = scrn-LeaveVT;
+scrn-LeaveVT = glxDRILeaveVT;
 }
 
 static void
diff --git a/hw/xfree86/common/xf86VGAarbiter.c 
b/hw/xfree86/common/xf86VGAarbiter.c
index cd45cd1..2696e96 100644
--- a/hw/xfree86/common/xf86VGAarbiter.c
+++ b/hw/xfree86/common/xf86VGAarbiter.c
@@ -530,12 +530,16 @@ static Bool
 VGAarbiterEnterVT(int index, int flags)
 {
 Bool val;
+ScrnInfoPtr pScrn = xf86Screens[index];
 ScreenPtr pScreen = screenInfo.screens[index];
 VGAarbiterScreenPtr pScreenPriv = (VGAarbiterScreenPtr)dixLookupPrivate(
 pScreen-devPrivates, VGAarbiterScreenKey);
 
 VGAGet();
-val = (*pScreenPriv-EnterVT)(index, flags);
+pScrn-EnterVT = pScreenPriv-EnterVT;
+val = (*pScrn-EnterVT)(index, flags);
+pScreenPriv-EnterVT = pScrn-EnterVT;
+pScrn-EnterVT = VGAarbiterEnterVT;
 VGAPut();
 return val;
 }
@@ -543,12 +547,16 @@ VGAarbiterEnterVT(int index, int flags)
 static void
 VGAarbiterLeaveVT(int index, int flags)
 {
+ScrnInfoPtr pScrn = 

xorg-server: Changes to 'upstream-unstable'

2010-08-24 Thread Julien Cristau
 Xext/xace.c |  170 +---
 doc/Xserver.man.pre |   26 ++
 exa/exa_classic.c   |3 
 fb/fbbits.h |2 
 hw/xfree86/common/xf86RandR.c   |4 
 hw/xfree86/ddc/interpret_edid.c |2 
 hw/xfree86/parser/Input.c   |7 +
 os/access.c |   14 ++-
 render/render.c |8 +
 xkb/xkbUtils.c  |4 
 10 files changed, 114 insertions(+), 126 deletions(-)

New commits:
commit 4c313472c45de171efb76231e7c7f323aa4eda3f
Author: Alan Coopersmith alan.coopersm...@oracle.com
Date:   Thu May 20 17:56:26 2010 -0700

Xserver(1) man page updates

- Note that -br is now default.
- Move -bs after -br for alphabetical ordering.
- Remove -config option that's been hidden in ignore section,
  since ajax removed the -config code a couple years back.
- Add -nocursor option.
- Add xinput  xrandr to list of runtime server control programs
- Replace XDarwin with Xquartz in list of Xservers

Signed-off-by: Alan Coopersmith alan.coopersm...@oracle.com
Reviewed-by: Adam Jackson a...@redhat.com
Signed-off-by: Keith Packard kei...@keithp.com
(cherry picked from commit 7b09335a46f9428141811230c69eef7968531359)

diff --git a/doc/Xserver.man.pre b/doc/Xserver.man.pre
index 6154191..d225c26 100644
--- a/doc/Xserver.man.pre
+++ b/doc/Xserver.man.pre
@@ -100,12 +100,12 @@ specifies a file which contains a collection of 
authorization records used
 to authenticate access.  See also the \fIxdm\fP(1) and 
 \fIXsecurity\fP(__miscmansuffix__) manual pages.
 .TP 8
-.B \-bs
-disables backing store support on all screens.
-.TP 8
 .B \-br
 sets the default root window to solid black instead of the standard root weave
-pattern.
+pattern.   This is the default unless -retro or -wr is specified.
+.TP 8
+.B \-bs
+disables backing store support on all screens.
 .TP 8
 .B \-c
 turns off key-click.
@@ -117,17 +117,6 @@ sets key-click volume (allowable range: 0-100).
 sets the visual class for the root window of color screens.
 The class numbers are as specified in the X protocol.
 Not obeyed by all servers.
-.ig
-.TP 8
-.B \-config \fIfilename\fP
-reads more options from the given file.  Options in the file may be separated
-by newlines if desired.  If a '#' character appears on a line, all characters
-between it and the next newline are ignored, providing a simple commenting
-facility.  The \fB\-config\fP option itself may appear in the file.
-.BR NOTE :
-This option is disabled when the Xserver is run with an effective uid
-different from the user's real uid.
-..
 .TP 8
 .B \-core
 causes the server to generate a core dump on fatal errors.
@@ -184,6 +173,9 @@ sets the maximum big request to
 .I size
 MB.
 .TP 8
+.B \-nocursor
+disable the display of the pointer cursor.
+.TP 8
 .B \-nolisten \fItrans-type\fP
 disables a transport type.  For example, TCP/IP connections can be disabled
 with
@@ -584,11 +576,11 @@ Security: \fIXsecurity\fP(__miscmansuffix__), 
\fIxauth\fP(1), \fIXau\fP(1),
 Starting the server: \fIstartx\fP(1), \fIxdm\fP(1), \fIxinit\fP(1)
 .PP
 Controlling the server once started: \fIxset\fP(1), \fIxsetroot\fP(1),
-\fIxhost\fP(1)
+\fIxhost\fP(1), \fIxinput\fP(1), \fIxrandr\fP(1)
 .PP
 Server-specific man pages:
 \fIXorg\fP(1), \fIXdmx\fP(1), \fIXephyr\fP(1), \fIXnest\fP(1),
-\fIXvfb\fP(1), \fIXDarwin\fP(1), \fIXWin\fP(1).
+\fIXvfb\fP(1), \fIXquartz\fP(1), \fIXWin\fP(1).
 .PP
 Server internal documentation:
 .I Definition of the Porting Layer for the X v11 Sample Server

commit 7787526a715a3179085bdc70110f5102a02706e3
Author: Simon Farnsworth simon.farnswo...@onelan.com
Date:   Tue Jun 22 10:13:30 2010 +0100

Don't crash when asked if a client that has disconnected was local

ProcDRI2Dispatch uses LocalClient to determine if it's safe to respond
to a client that has made DRI2 requests which aren't sensible for
remote clients (anything but version). When the client has disappeared
mid-request stream (e.g. as a result of a kill -9, or a client-side
bug), LocalClient causes the X server to follow suit, as
((OsCommPtr)client-osPrivate)-trans_conn is NULL at this point.

The simple and obvious fix is to just return not local when
trans_conn is NULL, which fixes the crash I was seeing; however Keith
Packard pointed out that just checking trans_conn isn't enough;
quoting Keith:

This looks almost right to me -- I reviewed the os code to see when
_XSERVTransClose is called (which is what frees the trans_conn data) and
found that every place which called that immediately set trans_conn to
NULL, except for the call in CloseDownFileDescriptor which is only
called from CloseDownConnection and which is immediately followed by
freeing the OsCommRec and setting client-osPrivate to NULL. So, I'd
suggest checking client-osPrivate in addition to the above check.
 

xorg-server: Changes to 'upstream-unstable'

2010-06-03 Thread Julien Cristau
 hw/xfree86/common/xf86DGA.c|4 +++-
 hw/xfree86/modes/xf86Cursors.c |2 +-
 hw/xquartz/X11Application.m|   28 
 hw/xquartz/bundle/Makefile.am  |4 
 include/eventstr.h |4 ++--
 5 files changed, 30 insertions(+), 12 deletions(-)

New commits:
commit f44ebbd3d52fa0dfdc51f6635721592b70affb6e
Author: Cyril Brulebois k...@debian.org
Date:   Mon Mar 1 02:11:36 2010 +0100

Fix null pointer dereference in xf86_reload_cursors().

Upon resume, X may try to dereference a null pointer, which has been
reported in Debian bug #507916 (http://bugs.debian.org/507916).

Jim Paris came up with a patch which solves the problem for him. Here's
a (hopefully) fixed version of his patch (without the typo).

Cc: Jim Paris j...@jtan.com
Signed-off-by: Cyril Brulebois k...@debian.org
Reviewed-By: Matthias Hopf mh...@suse.de
Signed-off-by: Keith Packard kei...@keithp.com
(cherry picked from commit fa6c7012572093a82c9389682977efff85590719)

diff --git a/hw/xfree86/modes/xf86Cursors.c b/hw/xfree86/modes/xf86Cursors.c
index 385848b..d6e747f 100644
--- a/hw/xfree86/modes/xf86Cursors.c
+++ b/hw/xfree86/modes/xf86Cursors.c
@@ -611,7 +611,7 @@ xf86_reload_cursors (ScreenPtr screen)
 cursor_screen_priv = dixLookupPrivate(screen-devPrivates,
  xf86CursorScreenKey);
 /* return if HW cursor is inactive, to avoid displaying two cursors */
-if (!cursor_screen_priv-isUp)
+if (!cursor_screen_priv || !cursor_screen_priv-isUp)
return;
 
 scrn = xf86Screens[screen-myNum];

commit d2f29b85d14fa56f22302854b585d04124b0db92
Author: Peter Hutterer peter.hutte...@who-t.net
Date:   Fri Apr 16 16:35:22 2010 +1000

xfree86: dga needs to use the master keyboard state (#27573)

GetPairedDevice() may not always return the keyboard, resulting in a
null-pointer dereference when accessing the XKB state.
For floating devices, the GetMaster() returns the device itself.

X.Org Bug 27573 http://bugs.freedesktop.org/show_bug.cgi?id=27573

Signed-off-by: Peter Hutterer peter.hutte...@who-t.net
Reviewed-by: Daniel Stone dan...@fooishbar.org
Tested-by: Ben Hutchings b...@decadent.org.uk
(cherry picked from commit 10de9e8ee37265a35ceeceb2007d711da70d4f2d)

diff --git a/hw/xfree86/common/xf86DGA.c b/hw/xfree86/common/xf86DGA.c
index 804fd37..5d8addb 100644
--- a/hw/xfree86/common/xf86DGA.c
+++ b/hw/xfree86/common/xf86DGA.c
@@ -1088,13 +1088,15 @@ DGAProcessPointerEvent (ScreenPtr pScreen, DGAEvent 
*event, DeviceIntPtr mouse)
 ButtonClassPtr  butc = mouse-button;
 DGAScreenPtrpScreenPriv = DGA_GET_SCREEN_PRIV(pScreen);
 DeviceEvent ev;
+DeviceIntPtrmaster = GetMaster(mouse, MASTER_KEYBOARD);
 
 memset(ev, 0, sizeof(ev));
 ev.header = ET_Internal;
 ev.length = sizeof(ev);
 ev.type = event-subtype;
 ev.corestate  = butc-state;
-ev.corestate |= 
XkbStateFieldFromRec(GetPairedDevice(mouse)-key-xkbInfo-state);
+if (master  master-key)
+ev.corestate |= XkbStateFieldFromRec(master-key-xkbInfo-state);
 
 UpdateDeviceState(mouse, ev);
 

commit 89a2b2771f799f371c25945df18440dc4695909a
Author: Jeremy Huddleston jerem...@apple.com
Date:   Sun May 16 10:03:13 2010 -0700

XQuartz: Don't use deltaXY for determining pointer location on scroll events

rdar://problem/7989690

Signed-off-by: Jeremy Huddleston jerem...@apple.com
Reviewed-by: Edward Moy e...@apple.com
(cherry picked from commit ecfeabec8d0dcfe286fb893047f1fe1a7ea9f8f5)

diff --git a/hw/xquartz/X11Application.m b/hw/xquartz/X11Application.m
index ed9fb32..805ed99 100644
--- a/hw/xquartz/X11Application.m
+++ b/hw/xquartz/X11Application.m
@@ -1030,23 +1030,32 @@ static inline int ensure_flag(int flags, int 
device_independent, int device_depe
 if(isMouseOrTabletEvent) {
 static NSPoint lastpt;
 NSWindow *window = [e window];
-NSRect screen = [[[NSScreen screens] objectAtIndex:0] frame];;
-
+NSRect screen = [[[NSScreen screens] objectAtIndex:0] frame];
+   BOOL hasUntrustedPointerDelta;
+
+// NSEvents for tablets are not consistent wrt deltaXY between events, 
so we cannot rely on that
+// Thus tablets will be subject to the warp-pointer bug worked around 
by the delta, but tablets
+// are not normally used in cases where that bug would present itself, 
so this is a fair tradeoff
+// rdar://problem/7111003 deltaX and deltaY are incorrect for 
NSMouseMoved, NSTabletPointEventSubtype
+// http://xquartz.macosforge.org/trac/ticket/288
+hasUntrustedPointerDelta = isTabletEvent;
+
+// The deltaXY for middle click events also appear erroneous after 
fast user switching
+// rdar://problem/7979468 deltaX and deltaY are incorrect for 
NSOtherMouseDown and NSOtherMouseUp after FUS
+// 

xorg-server: Changes to 'upstream-unstable'

2010-05-04 Thread Julien Cristau
 Xext/xtest.c|6 +-
 configure.ac|4 ++--
 hw/xquartz/GL/indirect.c|2 ++
 hw/xquartz/GL/visualConfigs.c   |3 ++-
 hw/xquartz/xpr/x-list.c |1 +
 mi/miexpose.c   |3 +++
 miext/rootless/rootlessWindow.c |4 
 7 files changed, 15 insertions(+), 8 deletions(-)

New commits:
commit e9a2eb86e9dd1f0d3d955bb7c16f2660c773e070
Author: Peter Hutterer peter.hutte...@who-t.net
Date:   Tue May 4 10:55:22 2010 +1000

xserver 1.7.7

Signed-off-by: Peter Hutterer peter.hutte...@who-t.net

diff --git a/configure.ac b/configure.ac
index 4b020a4..07be7f0 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,8 +26,8 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.57)
-AC_INIT([xorg-server], 1.7.6.902, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE=2010-04-21
+AC_INIT([xorg-server], 1.7.7, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE=2010-05-04
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([dist-bzip2 foreign])
 AM_MAINTAINER_MODE

commit ad48184752970541aa153bf2961a2d7da1a910b5
Author: Peter Hutterer peter.hutte...@who-t.net
Date:   Wed Apr 21 15:51:20 2010 +1000

Xext: only update the sprite on pointer events.

A call to miPointerUpdateSprite for the XTEST keyboard may result in a
NULL pointer dereference in miDCPutUpCursor() when the save buffer is NULL.

XTS test case: Xlib 11 KeymapNotify

Signed-off-by: Peter Hutterer peter.hutte...@who-t.net
(cherry picked from commit af170a4ab76d33254dd4e54a33bb410fa1624739)

diff --git a/Xext/xtest.c b/Xext/xtest.c
index 6b0e9fd..e6d4431 100644
--- a/Xext/xtest.c
+++ b/Xext/xtest.c
@@ -184,6 +184,7 @@ ProcXTestFakeInput(ClientPtr client)
 int i;
 int base = 0;
 int flags = 0;
+int need_ptr_update = 1;
 
 nev = (stuff-length  2) - sizeof(xReq);
 if ((nev % sizeof(xEvent)) || !nev)
@@ -387,6 +388,8 @@ ProcXTestFakeInput(ClientPtr client)
 client-errorValue = ev-u.u.detail;
 return BadValue;
 }
+
+need_ptr_update = 0;
 break;
 case MotionNotify:
 if (!dev-valuator)
@@ -451,7 +454,8 @@ ProcXTestFakeInput(ClientPtr client)
 for (i = 0; i  nevents; i++)
 mieqProcessDeviceEvent(dev, (InternalEvent*)(xtest_evlist+i)-event, 
NULL);
 
-miPointerUpdateSprite(dev);
+if (need_ptr_update)
+miPointerUpdateSprite(dev);
 return client-noClientException;
 }
 

commit d2229e829d61033141d25fd4486c689c0367b97e
Author: Jeremy Huddleston jerem...@apple.com
Date:   Tue Apr 27 13:14:47 2010 -0700

XQuartz GLX: Change around includes for better compatability with different 
OS versions

Signed-off-by: Jeremy Huddleston jerem...@apple.com
(cherry picked from commit 0efd7b8d82a48793341e27d4c224986e0971687c)

diff --git a/hw/xquartz/GL/indirect.c b/hw/xquartz/GL/indirect.c
index 574a90a..4caeb13 100644
--- a/hw/xquartz/GL/indirect.c
+++ b/hw/xquartz/GL/indirect.c
@@ -42,6 +42,8 @@
 #define GL_GLEXT_WUNDEF_SUPPORT
 
 #include OpenGL/OpenGL.h
+#include OpenGL/gl.h
+#include OpenGL/glext.h
 #include OpenGL/CGLContext.h
 
 /* These next few GL_EXT pre-processing blocks are to explicitly define 
diff --git a/hw/xquartz/GL/visualConfigs.c b/hw/xquartz/GL/visualConfigs.c
index bef27f0..cecc902 100644
--- a/hw/xquartz/GL/visualConfigs.c
+++ b/hw/xquartz/GL/visualConfigs.c
@@ -35,9 +35,10 @@
 #include dri.h
 
 #include OpenGL/OpenGL.h
+#include OpenGL/gl.h
+#include OpenGL/glext.h
 #include OpenGL/CGLContext.h
 
-#include GL/gl.h
 #include GL/glxproto.h
 #include windowstr.h
 #include resource.h

commit 86f37fa8627807030cee89c117b05a4a06d2d734
Author: Jeremy Huddleston jerem...@apple.com
Date:   Wed Apr 21 08:38:53 2010 -0700

rootless: Add some sanity checking to miPaintWindow

This avoids painting the root window when it isn't actually drawable.

Signed-off-by: Jeremy Huddleston jerem...@apple.com
(cherry picked from commit 7b506fdc840aebed6b5acb91437a2cb620b5bddc)

diff --git a/mi/miexpose.c b/mi/miexpose.c
index 1c9c3a4..f52b492 100644
--- a/mi/miexpose.c
+++ b/mi/miexpose.c
@@ -552,6 +552,9 @@ miPaintWindow(WindowPtr pWin, RegionPtr prgn, int what)
 DrawablePtrdrawable = pWin-drawable;
 
 #ifdef ROOTLESS
+if(!drawable || drawable-type == UNDRAWABLE_WINDOW)
+   return;
+
 if(IsFramedWindow(pWin)) {
 RootlessStartDrawing(pWin);
 RootlessDamageRegion(pWin, prgn);

commit 1dbdcfbcbc8105a5878ebce4c74aff7f8071f590
Author: Jeremy Huddleston jerem...@apple.com
Date:   Sun Apr 18 01:22:27 2010 -0700

rootless: Remove an unneeded comment

Signed-off-by: Jeremy Huddleston jerem...@apple.com
(cherry picked from commit 4d3789c9b3fbe6aad32fcacd964353b612640f27)

diff --git a/miext/rootless/rootlessWindow.c 

xorg-server: Changes to 'upstream-unstable'

2010-04-30 Thread Julien Cristau
 Xext/geext.c |   13 
 Xext/geint.h |3 
 configure.ac |4 
 dix/events.c |8 
 exa/exa.c|  145 
 exa/exa_accel.c  |   45 
 exa/exa_classic.c|8 
 exa/exa_driver.c |8 
 exa/exa_mixed.c  |8 
 exa/exa_priv.h   |   17 
 exa/exa_unaccel.c|   73 
 hw/vfb/InitInput.c   |6 
 hw/xquartz/GL/indirect.c |2 
 hw/xquartz/X11Application.h  |1 
 hw/xquartz/X11Application.m  |   19 
 hw/xquartz/X11Controller.h   |6 
 hw/xquartz/X11Controller.m   |  102 
 hw/xquartz/bundle/Resources/Dutch.lproj/Localizable.strings  |binary
 hw/xquartz/bundle/Resources/Dutch.lproj/locversion.plist |4 
 hw/xquartz/bundle/Resources/Dutch.lproj/main.nib/designable.nib  |  104 
 hw/xquartz/bundle/Resources/Dutch.lproj/main.nib/keyedobjects.nib|binary
 hw/xquartz/bundle/Resources/English.lproj/main.nib/designable.nib| 1791 
+---
 hw/xquartz/bundle/Resources/English.lproj/main.nib/keyedobjects.nib  |binary
 hw/xquartz/bundle/Resources/French.lproj/Localizable.strings |binary
 hw/xquartz/bundle/Resources/French.lproj/locversion.plist|4 
 hw/xquartz/bundle/Resources/French.lproj/main.nib/designable.nib |  105 
 hw/xquartz/bundle/Resources/French.lproj/main.nib/keyedobjects.nib   |binary
 hw/xquartz/bundle/Resources/German.lproj/Localizable.strings |binary
 hw/xquartz/bundle/Resources/German.lproj/locversion.plist|4 
 hw/xquartz/bundle/Resources/German.lproj/main.nib/designable.nib |  106 
 hw/xquartz/bundle/Resources/German.lproj/main.nib/keyedobjects.nib   |binary
 hw/xquartz/bundle/Resources/Italian.lproj/Localizable.strings|binary
 hw/xquartz/bundle/Resources/Italian.lproj/locversion.plist   |4 
 hw/xquartz/bundle/Resources/Italian.lproj/main.nib/designable.nib|  108 
 hw/xquartz/bundle/Resources/Italian.lproj/main.nib/keyedobjects.nib  |binary
 hw/xquartz/bundle/Resources/Japanese.lproj/Localizable.strings   |binary
 hw/xquartz/bundle/Resources/Japanese.lproj/locversion.plist  |4 
 hw/xquartz/bundle/Resources/Japanese.lproj/main.nib/designable.nib   |  125 
 hw/xquartz/bundle/Resources/Japanese.lproj/main.nib/keyedobjects.nib |binary
 hw/xquartz/bundle/Resources/Spanish.lproj/Localizable.strings|binary
 hw/xquartz/bundle/Resources/Spanish.lproj/locversion.plist   |4 
 hw/xquartz/bundle/Resources/Spanish.lproj/main.nib/designable.nib|   96 
 hw/xquartz/bundle/Resources/Spanish.lproj/main.nib/keyedobjects.nib  |binary
 hw/xquartz/bundle/Resources/ar.lproj/InfoPlist.strings   |binary
 hw/xquartz/bundle/Resources/ar.lproj/Localizable.strings |binary
 hw/xquartz/bundle/Resources/ar.lproj/locversion.plist|   14 
 hw/xquartz/bundle/Resources/ar.lproj/main.nib/designable.nib | 3955 
++
 hw/xquartz/bundle/Resources/ar.lproj/main.nib/keyedobjects.nib   |binary
 hw/xquartz/bundle/Resources/da.lproj/Localizable.strings |binary
 hw/xquartz/bundle/Resources/da.lproj/locversion.plist|4 
 hw/xquartz/bundle/Resources/da.lproj/main.nib/designable.nib |   82 
 hw/xquartz/bundle/Resources/da.lproj/main.nib/keyedobjects.nib   |binary
 hw/xquartz/bundle/Resources/fi.lproj/Localizable.strings |binary
 hw/xquartz/bundle/Resources/fi.lproj/locversion.plist|4 
 hw/xquartz/bundle/Resources/fi.lproj/main.nib/designable.nib |  167 
 hw/xquartz/bundle/Resources/fi.lproj/main.nib/keyedobjects.nib   |binary
 hw/xquartz/bundle/Resources/ko.lproj/Localizable.strings |binary
 hw/xquartz/bundle/Resources/ko.lproj/locversion.plist|4 
 hw/xquartz/bundle/Resources/ko.lproj/main.nib/designable.nib |   82 
 hw/xquartz/bundle/Resources/ko.lproj/main.nib/keyedobjects.nib   |binary
 hw/xquartz/bundle/Resources/no.lproj/Localizable.strings |binary
 hw/xquartz/bundle/Resources/no.lproj/locversion.plist|4 
 hw/xquartz/bundle/Resources/no.lproj/main.nib/designable.nib |   82 
 hw/xquartz/bundle/Resources/no.lproj/main.nib/keyedobjects.nib  

xorg-server: Changes to 'upstream-unstable'

2010-04-16 Thread Julien Cristau
 Xext/saver.c   |2 
 configure.ac   |5 +-
 dix/eventconvert.c |1 
 dix/events.c   |   36 ++
 dix/extension.c|5 +-
 glx/glxcmdsswap.c  |8 +--
 hw/kdrive/linux/evdev.c|2 
 hw/xfree86/common/xf86Init.c   |2 
 hw/xfree86/ramdac/xf86Cursor.c |7 ++
 hw/xquartz/GL/indirect.c   |2 
 hw/xquartz/X11Application.m|   25 +-
 hw/xquartz/pbproxy/Makefile.am |6 +-
 hw/xquartz/pbproxy/app-main.m  |   12 +---
 hw/xquartz/pbproxy/main.m  |   43 +
 hw/xquartz/pbproxy/pbproxy.h   |3 -
 hw/xquartz/pbproxy/x-input.m   |  100 +
 hw/xquartz/quartz.c|   26 +++---
 hw/xquartz/quartzKeyboard.c|5 +-
 render/glyph.c |3 +
 test/input.c   |4 +
 xkb/xkbUtils.c |2 
 21 files changed, 176 insertions(+), 123 deletions(-)

New commits:
commit 501c0ee63570da7501d047c51c40a2568af1df08
Author: Peter Hutterer peter.hutte...@who-t.net
Date:   Mon Apr 12 11:51:21 2010 +1000

xserver 1.7.6.901

Signed-off-by: Peter Hutterer peter.hutte...@who-t.net

diff --git a/configure.ac b/configure.ac
index 45de198..058ad01 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,8 +26,8 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.57)
-AC_INIT([xorg-server], 1.7.6, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE=2010-03-17
+AC_INIT([xorg-server], 1.7.6.901, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE=2010-04-12
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([dist-bzip2 foreign])
 AM_MAINTAINER_MODE

commit 8c0548bc34dead67bc944a59664be6254be928bd
Author: Tiago Vignatti tiago.vigna...@nokia.com
Date:   Thu Apr 1 18:57:50 2010 +0300

xfree86: die gracefully in the vga arbiter if AddScreen fails

vga arbiter will be locked in one device while AbortDDX will call LeaveVT
routines from the other device. Fail!

Signed-off-by: Tiago Vignatti tiago.vigna...@nokia.com
Reviewed-by: Keith Packard kei...@keithp.com
Signed-off-by: Keith Packard kei...@keithp.com
(cherry picked from commit b9ad452ec92a7dcbed680acb3f3b8ec29fa660df)

Signed-off-by: Peter Hutterer peter.hutte...@who-t.net

diff --git a/hw/xfree86/common/xf86Init.c b/hw/xfree86/common/xf86Init.c
index d3de670..09741d7 100644
--- a/hw/xfree86/common/xf86Init.c
+++ b/hw/xfree86/common/xf86Init.c
@@ -1245,7 +1245,9 @@ AbortDDX(void)
   * we might not have been wrapped yet. Therefore enable
   * screen explicitely.
   */
+ xf86VGAarbiterLock(xf86Screens[i]);
  (xf86Screens[i]-LeaveVT)(i, 0);
+ xf86VGAarbiterUnlock(xf86Screens[i]);
  }
   }
 

commit e7154e9375e6b624db01a787d9ec6c8cedc2eb81
Author: Peter Hutterer peter.hutte...@who-t.net
Date:   Wed Mar 17 14:32:38 2010 +1000

dix: if owner-events is true for passive grabs, add the window mask (#25400)

A client requesting a GrabModeSync button grab, owner-events true, with only
the ButtonRelease mask set would never receive the press event even if the
grab window had the ButtonPress mask set.

The protocol requires that if owner-events is true, then the delivery mask
is the combination of the grab mask + the window event mask.

X.Org Bug 25400 http://bugs.freedesktop.org/show_bug.cgi?id=25400

Signed-off-by: Peter Hutterer peter.hutte...@who-t.net
Tested-by: Jim Ramsay i...@jimramsay.com
Signed-off-by: Keith Packard kei...@keithp.com
(cherry picked from commit 1c612acca8568fcdf9761d23f112adaf4d496f1b)

Signed-off-by: Peter Hutterer peter.hutte...@who-t.net

diff --git a/dix/events.c b/dix/events.c
index 3c625db..732740e 100644
--- a/dix/events.c
+++ b/dix/events.c
@@ -3552,6 +3552,8 @@ CheckPassiveGrabsOnWindow(
 xE = core;
 count = 1;
 mask = grab-eventMask;
+if (grab-ownerEvents)
+mask |= pWin-eventMask;
 } else if (match  XI2_MATCH)
 {
 rc = EventToXI2((InternalEvent*)event, xE);
@@ -3573,6 +3575,24 @@ CheckPassiveGrabsOnWindow(
 mask = 
grab-xi2mask[device-id][((xGenericEvent*)xE)-evtype/8];
 else if (event-type == XI_Enter || event-type == XI_FocusIn)
 mask = grab-xi2mask[device-id][event-type/8];
+
+if (grab-ownerEvents  wOtherInputMasks(grab-window))
+{
+InputClientsPtr icp =
+wOtherInputMasks(grab-window)-inputClients;
+
+while(icp)
+{
+if (rClient(icp) == rClient(grab))
+{
+  

xorg-server: Changes to 'upstream-unstable'

2010-03-18 Thread Timo Aaltonen
 Xext/Makefile.am|4 +
 Xi/exevents.c   |2 
 configure.ac|6 +-
 dix/events.c|   91 ++--
 hw/xfree86/dri2/dri2.c  |2 
 hw/xquartz/darwin.c |6 ++
 hw/xquartz/quartzKeyboard.c |   24 ++-
 include/inputstr.h  |   30 ++
 8 files changed, 114 insertions(+), 51 deletions(-)

New commits:
commit c552ec12f9112901d5266c00fb3aaf4e06f5d614
Author: Peter Hutterer peter.hutte...@who-t.net
Date:   Wed Mar 17 10:49:28 2010 +1000

xserver 1.7.6

Signed-off-by: Peter Hutterer peter.hutte...@who-t.net

diff --git a/configure.ac b/configure.ac
index c215b5c..4a19ae4 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,8 +26,8 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.57)
-AC_INIT([xorg-server], 1.7.5.902, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE=2010-03-12
+AC_INIT([xorg-server], 1.7.6, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE=2010-03-17
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([dist-bzip2 foreign])
 AM_MAINTAINER_MODE

commit 63ef872068299aa2ea6bfd7d11935c222cc1e102
Author: Jeremy Huddleston jerem...@apple.com
Date:   Tue Mar 16 11:40:53 2010 -0700

Revert XQuartz: Explicitly pass a bellProc to make XBell() work again.

I'm not quite sure why this was necessary, but DDXRingBell is being called
from CoreKeyboardBell, so we don't need a separate bellProc which would
result in multiple rings.

This reverts commit 7e7e7935eeb86b5990664a662471800cfd2e7ce0.

Conflicts:

hw/xquartz/quartzKeyboard.c

Signed-off-by: Jeremy Huddleston jerem...@apple.com

diff --git a/hw/xquartz/quartzKeyboard.c b/hw/xquartz/quartzKeyboard.c
index 7e36a9a..c9ef7cc 100644
--- a/hw/xquartz/quartzKeyboard.c
+++ b/hw/xquartz/quartzKeyboard.c
@@ -184,12 +184,6 @@ static void DarwinChangeKeyboardControl(DeviceIntPtr 
device, KeybdCtrl *ctrl) {
 // keyclick, bell volume / pitch, autorepead, LED's
 }
 
-static void DarwinKeyboardBell(int volume, DeviceIntPtr pDev, pointer arg, int 
something) {
-KeybdCtrl *ctrl = arg;
-
-DDXRingBell(volume, ctrl-bell_pitch, ctrl-bell_duration);
-}
-
 //-
 // Utility functions to help parse Darwin keymap
 //-
@@ -301,7 +295,7 @@ void DarwinKeyboardInit(DeviceIntPtr pDev) {
 // for a kIOHIDParamConnectType connection.
 assert(darwinParamConnect = NXOpenEventStatus());
 
-InitKeyboardDeviceStruct(pDev, NULL, DarwinKeyboardBell, 
DarwinChangeKeyboardControl);
+InitKeyboardDeviceStruct(pDev, NULL, NULL, DarwinChangeKeyboardControl);
 
 DarwinKeyboardReloadHandler();
 

commit 31292a7c775e4a249926140a86bc19c3805cdd96
Author: Jeremy Huddleston jerem...@apple.com
Date:   Wed Feb 10 15:52:14 2010 -0800

XQuartz: Use an empty xkb keymap by default

Signed-off-by: Jeremy Huddleston jerem...@apple.com
(cherry picked from commit 5172253bae3b9867118c6717434e73c173acd5e9)

diff --git a/hw/xquartz/darwin.c b/hw/xquartz/darwin.c
index 30b8905..8b6ce62 100644
--- a/hw/xquartz/darwin.c
+++ b/hw/xquartz/darwin.c
@@ -45,6 +45,7 @@
 #include site.h
 #include globals.h
 #include dix.h
+#include xkbsrv.h
 
 #include X11/extensions/XI.h
 #include X11/extensions/XIproto.h
@@ -463,6 +464,11 @@ int DarwinParseModifierList(const char *constmodifiers, 
int separatelr)
  */
 void InitInput( int argc, char **argv )
 {
+XkbRMLVOSet rmlvo = { .rules = base, .model = empty, .layout = empty,
+  .variant = NULL, .options = NULL };
+/* We need to really have rules... or something... */
+XkbSetRulesDflts(rmlvo);
+
 darwinKeyboard = AddInputDevice(serverClient, DarwinKeybdProc, TRUE);
 RegisterKeyboardDevice( darwinKeyboard );
 darwinKeyboard-name = strdup(keyboard);
diff --git a/hw/xquartz/quartzKeyboard.c b/hw/xquartz/quartzKeyboard.c
index 3b4eac3..7e36a9a 100644
--- a/hw/xquartz/quartzKeyboard.c
+++ b/hw/xquartz/quartzKeyboard.c
@@ -301,9 +301,6 @@ void DarwinKeyboardInit(DeviceIntPtr pDev) {
 // for a kIOHIDParamConnectType connection.
 assert(darwinParamConnect = NXOpenEventStatus());
 
-/* We need to really have rules... or something... */
-//XkbSetRulesDflts(base, pc105, us, NULL, NULL);
-
 InitKeyboardDeviceStruct(pDev, NULL, DarwinKeyboardBell, 
DarwinChangeKeyboardControl);
 
 DarwinKeyboardReloadHandler();
@@ -775,12 +772,9 @@ Bool QuartzReadSystemKeymap(darwinKeyboardInfo *info) {
 #endif
 }
 
-// There seems to be an issue with this in 1.5+, shift-space is not
-// producing space, it's sending NoSymbol... ?
-//if (k[3] == k[2]) k[3] = NoSymbol;
-//if (k[1] == k[0]) k[1] = NoSymbol;
-

xorg-server: Changes to 'upstream-unstable'

2010-03-04 Thread Brice Goglin
 Xext/xselinux.c  |  131 +--
 Xext/xselinux.h  |8 -
 Xi/exevents.c|   13 +--
 Xi/setmode.c |   10 ++
 configure.ac |   18 +---
 dix/devices.c|8 -
 dix/events.c |   83 +--
 dix/getevents.c  |7 +
 hw/xfree86/common/xf86VGAarbiter.c   |   65 ---
 hw/xfree86/common/xf86cmap.c |9 --
 hw/xfree86/modes/xf86Crtc.c  |   14 +--
 hw/xfree86/modes/xf86Crtc.h  |   26 ++
 hw/xfree86/modes/xf86RandR12.c   |   14 ++-
 hw/xfree86/os-support/solaris/sun_bell.c |5 -
 hw/xquartz/GL/indirect.c |2 
 hw/xquartz/GL/visualConfigs.c|3 
 hw/xquartz/X11Application.m  |   18 ++--
 hw/xquartz/mach-startup/bundle-main.c|   30 +--
 hw/xquartz/mach-startup/stub.c   |7 -
 hw/xquartz/pbproxy/x-selection.h |9 --
 hw/xquartz/quartzAudio.c |   35 
 hw/xquartz/quartzKeyboard.c  |2 
 include/dix-config.h.in  |2 
 include/dix.h|6 -
 include/eventconvert.h   |6 -
 record/record.c  |  123 -
 26 files changed, 262 insertions(+), 392 deletions(-)

New commits:
commit 1242e494c8abc25d51fa0f8120ba353ffcf7be08
Author: Peter Hutterer peter.hutte...@who-t.net
Date:   Fri Mar 5 09:27:13 2010 +1000

xserver 1.7.5.901

Signed-off-by: Peter Hutterer peter.hutte...@who-t.net

diff --git a/configure.ac b/configure.ac
index 0726bd2..08e444e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,8 +26,8 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.57)
-AC_INIT([xorg-server], 1.7.5, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE=2010-02-16
+AC_INIT([xorg-server], 1.7.5.901, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE=2010-03-05
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([dist-bzip2 foreign])
 AM_MAINTAINER_MODE

commit d023b78c739672894d6b8196d91129845614e369
Author: Keith Packard kei...@keithp.com
Date:   Thu Feb 25 11:37:05 2010 -0800

Allow for missing or disabled compat_output

When the compat output is missing (I don't think this is actually
possible), or is disabled (and hence has no crtc), we would like to
avoid dereferencing NULL pointers. This patch creates inline functions
to extract the current compat output, crtc or associated RandR crtc
structure, carefully checking for NULL pointers everywhere.

Reviewed-by: Adam Jackson a...@redhat.com
Signed-off-by: Keith Packard kei...@keithp.com
(cherry picked from commit de86a3a3448f0a55c1cd99aee9ea80070a589877)

diff --git a/hw/xfree86/common/xf86cmap.c b/hw/xfree86/common/xf86cmap.c
index edd5ae9..f60d96e 100644
--- a/hw/xfree86/common/xf86cmap.c
+++ b/hw/xfree86/common/xf86cmap.c
@@ -1001,8 +1001,7 @@ xf86ChangeGammaRamp(
 CMapLinkPtr pLink;
 
 if (xf86_crtc_supports_gamma(pScrn)) {
-   xf86CrtcConfigPtr config = XF86_CRTC_CONFIG_PTR(pScrn);
-   RRCrtcPtr crtc = 
config-output[config-compat_output]-crtc-randr_crtc;
+   RRCrtcPtr crtc = xf86CompatRRCrtc(pScrn);
 
if (crtc) {
if (crtc-gammaSize != size)
@@ -1076,8 +1075,7 @@ xf86GetGammaRampSize(ScreenPtr pScreen)
 CMapScreenPtr pScreenPriv;
 
 if (xf86_crtc_supports_gamma(pScrn)) {
-   xf86CrtcConfigPtr config = XF86_CRTC_CONFIG_PTR(pScrn);
-   RRCrtcPtr crtc = 
config-output[config-compat_output]-crtc-randr_crtc;
+   RRCrtcPtr crtc = xf86CompatRRCrtc(pScrn);
 
if (crtc)
return crtc-gammaSize;
@@ -1106,8 +1104,7 @@ xf86GetGammaRamp(
 int shift, sigbits;
 
 if (xf86_crtc_supports_gamma(pScrn)) {
-   xf86CrtcConfigPtr config = XF86_CRTC_CONFIG_PTR(pScrn);
-   RRCrtcPtr crtc = 
config-output[config-compat_output]-crtc-randr_crtc;
+   RRCrtcPtr crtc = xf86CompatRRCrtc(pScrn);
 
if (crtc) {
if (crtc-gammaSize  size)
diff --git a/hw/xfree86/modes/xf86Crtc.c b/hw/xfree86/modes/xf86Crtc.c
index 9370640..334fad4 100644
--- a/hw/xfree86/modes/xf86Crtc.c
+++ b/hw/xfree86/modes/xf86Crtc.c
@@ -2571,8 +2571,8 @@ xf86SetDesiredModes (ScrnInfoPtr scrn)
if (!crtc-enabled)
continue;
 
-   if (config-output[config-compat_output]-crtc == crtc)
-   output = config-output[config-compat_output];
+   if (xf86CompatOutput(scrn)  xf86CompatCrtc(scrn) == crtc)
+   output = xf86CompatOutput(scrn);
else
{
for (o = 0; o  config-num_output; o++)
@@ -2692,14 +2692,16 @@ xf86SetSingleMode (ScrnInfoPtr pScrn, DisplayModePtr 
desired, Rotation rotation)
 {
 

xorg-server: Changes to 'upstream-unstable'

2010-02-16 Thread Brice Goglin
 Xi/exevents.c|   20 
 configure.ac |8 -
 dix/devices.c|   44 +++--
 dix/getevents.c  |2 
 dix/window.c |9 +
 fb/fbpict.c  |1 
 hw/xfree86/common/xf86Events.c   |   10 +-
 hw/xfree86/common/xf86cmap.c |   31 +++---
 hw/xfree86/doc/man/xorg.conf.man.pre |   45 +
 hw/xfree86/os-support/solaris/sun_VTsw.c |   26 -
 hw/xfree86/os-support/solaris/sun_init.c |   19 ++--
 hw/xfree86/x86emu/ops.c  |   70 +--
 hw/xquartz/bundle/Info.plist.cpp |4 
 hw/xquartz/quartzKeyboard.c  |4 
 hw/xquartz/xpr/xprScreen.c   |   13 ++
 os/utils.c   |4 
 randr/rrproperty.c   |5 -
 render/render.c  |  141 ++-
 xkb/xkmread.c|6 +
 xorg-server.m4   |3 
 20 files changed, 383 insertions(+), 82 deletions(-)

New commits:
commit f0ec2e0d7d0533b3b3fcccd9d78b76e4c9002d1e
Author: Peter Hutterer peter.hutte...@who-t.net
Date:   Tue Feb 16 11:34:38 2010 +1000

xserver 1.7.5

Signed-off-by: Peter Hutterer peter.hutte...@who-t.net

diff --git a/configure.ac b/configure.ac
index fc7ff05..8cb9048 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,8 +26,8 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.57)
-AC_INIT([xorg-server], 1.7.4.902, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE=2010-02-05
+AC_INIT([xorg-server], 1.7.5, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE=2010-02-16
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([dist-bzip2 foreign])
 AM_MAINTAINER_MODE

commit 15e9a3fc0c4776f3ff02a59375e61d9090e35a22
Author: Julien Cristau jcris...@debian.org
Date:   Fri Feb 12 23:34:57 2010 +0100

dix: restore lastDeviceEventTime update in dixSaveScreens

This was removed in 6b5978dcf1f7ac3ecc2f22df06f7000f360e2066 (Do not
reset lastDeviceEventTime when we do dixSaveScreens), but caused a
regression for XResetScreenSaver.  Add the lastDeviceEventTime update
back, but restrict it to that case.

X.Org bug#25855 http://bugs.freedesktop.org/25855

Reported-by: Lubos Lunak l.lu...@suse.cz
Tested-by: Lubos Lunak l.lu...@suse.cz
Signed-off-by: Julien Cristau jcris...@debian.org
Signed-off-by: Keith Packard kei...@keithp.com
(cherry picked from commit 001ce71dc11287dc94cc2fbc5d35677c046e6c04)

Signed-off-by: Peter Hutterer peter.hutte...@who-t.net

diff --git a/dix/window.c b/dix/window.c
index caff1cb..2676a54 100644
--- a/dix/window.c
+++ b/dix/window.c
@@ -3233,8 +3233,13 @@ dixSaveScreens(ClientPtr client, int on, int mode)
}
 }
 screenIsSaved = what;
-if (mode == ScreenSaverReset)
-   SetScreenSaverTimer();
+if (mode == ScreenSaverReset) {
+   if (on == SCREEN_SAVER_FORCER) {
+   UpdateCurrentTimeIf();
+   lastDeviceEventTime = currentTime;
+   }
+   SetScreenSaverTimer();
+}
 return Success;
 }
 

commit 38a83dce236da44856c075b5589d38ef0a662d4b
Author: Peter Harris phar...@opentext.com
Date:   Fri Feb 12 15:36:30 2010 -0500

Don't double-swap the RandR PropertyNotify event

The event is already swapped in randr.c/SRROutputPropertyNotifyEvent, so
it should not be swapped here.

X.Org Bugzilla #26511: http://bugs.freedesktop.org/show_bug.cgi?id=26511

Tested-by: Leonardo Chiquitto leona...@ngdn.org
Acked-by: Adam Jackson ajax at redhat.com
Reviewed-by: Julien Cristau jcristau at debian.org
Signed-off-by: Peter Harris phar...@opentext.com
Signed-off-by: Keith Packard kei...@keithp.com
(cherry picked from commit 97b03037f4d99fcebc7603011f41c3aff9871ce2)

Signed-off-by: Peter Hutterer peter.hutte...@who-t.net

diff --git a/randr/rrproperty.c b/randr/rrproperty.c
index 146facb..12e30e4 100644
--- a/randr/rrproperty.c
+++ b/randr/rrproperty.c
@@ -47,11 +47,6 @@ DeliverPropertyEvent(WindowPtr pWin, void *value)
 
event-sequenceNumber = client-sequence;
event-window = pRREvent-window-drawable.id;
-   if (client-swapped) {
-   int n;
-   swaps(event-sequenceNumber, n);
-   swapl(event-window, n);
-   }
WriteEventsToClient(pRREvent-client, 1, (xEvent *)event);
 }
 

commit 829980a4ff36b46745cf958824338b6341302c7b
Author: Peter Hutterer peter.hutte...@who-t.net
Date:   Wed Jan 13 15:03:45 2010 +1000

Xi: reset the sli pointers after copying device classes. (#25640)

If the indicator flags have the XkbSLI_IsDefault bit set, the indicator map
and names aren't their own bit of memory but rather point into the

xorg-server: Changes to 'upstream-unstable'

2010-01-08 Thread Timo Aaltonen
 configure.ac   |4 ++--
 dix/devices.c  |6 +++---
 include/eventstr.h |4 
 3 files changed, 5 insertions(+), 9 deletions(-)

New commits:
commit 88582f3d41315abf548a52622e52b7652d2c5281
Author: Peter Hutterer peter.hutte...@who-t.net
Date:   Fri Jan 8 09:38:58 2010 +1000

xserver 1.7.4

Signed-off-by: Peter Hutterer peter.hutte...@who-t.net

diff --git a/configure.ac b/configure.ac
index 10cf26f..c564cf9 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,8 +26,8 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.57)
-AC_INIT([xorg-server], 1.7.3.902, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE=2009-12-26
+AC_INIT([xorg-server], 1.7.4, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE=2010-01-08
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([dist-bzip2 foreign])
 AM_MAINTAINER_MODE

commit e54309e2ec1d16eb5570fad60af9be31f710c852
Author: Adam Tkac at...@redhat.com
Date:   Thu Jan 7 15:34:52 2010 +0100

Do not define members of include/eventstr.h:EventType enum conditionally.

Main problem is that EventType enumeration members can be different in
module and in server, which obviously causes problems.

Signed-off-by: Adam Tkac at...@redhat.com
Reviewed-by: Adam Jackson a...@redhat.com
Signed-off-by: Keith Packard kei...@keithp.com
(cherry picked from commit 8d53d84485fdce8ea9686e6f300a69f7ddebd467)

diff --git a/include/eventstr.h b/include/eventstr.h
index 0d5b1c6..79685c1 100644
--- a/include/eventstr.h
+++ b/include/eventstr.h
@@ -58,17 +58,13 @@ enum EventType {
 ET_ProximityOut,
 ET_DeviceChanged,
 ET_Hierarchy,
-#if XFreeXDGA
 ET_DGAEvent,
-#endif
 ET_RawKeyPress,
 ET_RawKeyRelease,
 ET_RawButtonPress,
 ET_RawButtonRelease,
 ET_RawMotion,
-#ifdef XQUARTZ
 ET_XQuartz,
-#endif
 ET_Internal = 0xFF /* First byte */
 };
 

commit 8661189c2c443e2d3e5d98e6b04d1852a98bac41
Author: Alan Coopersmith alan.coopersm...@sun.com
Date:   Mon Jan 4 18:21:54 2010 -0800

CloseDevice: call XkbRemoveResourceClient before freeing key class struct

XkbRemoveResourceClient() returns immediately if dev-key is NULL.
CloseDevice calls XkbRemoveResourceClient until it removes all resources.

If we free dev-key and NULL it before XkbRemoveResourceClient, then
infinite loop ensues, and the server appears to hang on exit or crash.

Signed-off-by: Alan Coopersmith alan.coopersm...@sun.com
Reviewed-by: Peter Hutterer peter.hutte...@who-t.net
Reviewed-by: Daniel Stone dan...@fooishbar.org
Signed-off-by: Keith Packard kei...@keithp.com
(cherry picked from commit 13c8bd3fde3b0831921e59f84936022a16379d63)

diff --git a/dix/devices.c b/dix/devices.c
index e3fd456..245a95b 100644
--- a/dix/devices.c
+++ b/dix/devices.c
@@ -843,6 +843,9 @@ CloseDevice(DeviceIntPtr dev)
 if(dev-valuator  dev-valuator-accelScheme.AccelCleanupProc)
dev-valuator-accelScheme.AccelCleanupProc(dev);
 
+while (dev-xkb_interest)
+   XkbRemoveResourceClient((DevicePtr)dev,dev-xkb_interest-resource);
+
 xfree(dev-name);
 
 classes = (ClassesPtr)dev-key;
@@ -854,9 +857,6 @@ CloseDevice(DeviceIntPtr dev)
 FreeAllDeviceClasses(classes);
 }
 
-while (dev-xkb_interest)
-   XkbRemoveResourceClient((DevicePtr)dev,dev-xkb_interest-resource);
-
 if (DevHasCursor(dev)  dev-spriteInfo-sprite) {
 xfree(dev-spriteInfo-sprite-spriteTrace);
 xfree(dev-spriteInfo-sprite);


-- 
To UNSUBSCRIBE, email to debian-x-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



xorg-server: Changes to 'upstream-unstable'

2010-01-06 Thread Julien Cristau
Rebased ref, commits from common ancestor:
commit d1320f4f2908fd3a248a79314bd78f76b03c71c5
Author: Peter Hutterer peter.hutte...@who-t.net
Date:   Sat Dec 26 10:13:46 2009 +1000

xserver 1.7.3.902

Signed-off-by: Peter Hutterer peter.hutte...@who-t.net

diff --git a/configure.ac b/configure.ac
index 833a092..10cf26f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,8 +26,8 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.57)
-AC_INIT([xorg-server], 1.7.3.901, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE=2009-12-11
+AC_INIT([xorg-server], 1.7.3.902, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE=2009-12-26
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([dist-bzip2 foreign])
 AM_MAINTAINER_MODE

commit c18dd3fd9b2e4bf386271042b7c933f64100
Author: Peter Hutterer peter.hutte...@who-t.net
Date:   Mon Dec 7 12:58:57 2009 +1000

xkb: don't assign garbage value to led_return.

As the comment for the function states, led_return is undefined if map is
NULL. We might as well skip writing to it then.

Found by clang.

Reported-by: Tomas Carnecky t...@dbservice.com
Signed-off-by: Peter Hutterer peter.hutte...@who-t.net
Reviewed-by: Jamey Sharp ja...@minilop.net
(cherry picked from commit 12fb31815db9de9c01f2d4155a2b74531777c0bf)

diff --git a/xkb/xkb.c b/xkb/xkb.c
index 98e879d..1cd4558 100644
--- a/xkb/xkb.c
+++ b/xkb/xkb.c
@@ -3273,20 +3273,21 @@ _XkbFindNamedIndicatorMap(XkbSrvLedInfoPtr sli, Atom 
indicator,
   int *led_return)
 {
 XkbIndicatorMapPtr  map;
-int led;
 
 /* search for the right indicator */
 map = NULL;
 if (sli-names  sli-maps) {
+   int led;
+
for (led = 0; (led  XkbNumIndicators)  (map == NULL); led++) {
if (sli-names[led] == indicator) {
map= sli-maps[led];
+   *led_return = led;
break;
}
}
 }
 
-*led_return = led;
 return map;
 }
 

commit 0f71be87b9174c587ccacd6aa61a9a66d3507ef4
Author: Peter Hutterer peter.hutte...@who-t.net
Date:   Mon Dec 14 11:05:20 2009 +1000

xfree86: belately init RandR12 if xinerama fails. (#24627)

On Fri, Dec 11, 2009 at 10:19:01AM -0800, Keith Packard wrote:
 On Wed, 9 Dec 2009 11:55:14 +1000, Peter Hutterer 
peter.hutte...@who-t.net wrote:
  On Tue, Dec 08, 2009 at 05:24:06PM -0800, Aaron Plattner wrote:
   On Tue, Dec 08, 2009 at 03:52:27PM -0800, Peter Hutterer wrote:
Xorg +xinerama crashes immediately due to whacky dependency between 
Xinerama
and RandR12. The latter doesn't initialize if Xinerama is enabled, 
but if
only one screen is found, Xinerama is disabled again and RandR12 
tries to
access data it never initialized.

 I'd sure like to have RandR get enabled when xinerama doesn't; is there
 an easy way of making that happen here? Perhaps having the RandR12 code
 disable Xinerama when only one screen is found? Or some other kludge?

you know the dependency better than I do so any hints are apreciated.
afaict, the screenInfo.numScreens (the check used by Xinerama) isn't
necessarily initialized at this point so we can't use the same check.
The following seems to work though:

From 670b3ebdb7312a6433a8f093d0820785db2aea20 Mon Sep 17 00:00:00 2001
From: Peter Hutterer peter.hutte...@who-t.net
Date: Mon, 14 Dec 2009 11:00:58 +1000
Subject: [PATCH] xfree86: if only one screen was found, disable Xinerama 
(#24627)

Xorg +xinerama crashes immediately due to whacky dependency between Xinerama
and RandR12. The latter doesn't initialize if Xinerama is enabled, but if
only one screen is found, Xinerama is disabled again and RandR12 tries to
access data it never initialized.

Dependency chain is:
- ProcessCommandLine sets noPanoramiXExtension to FALSE
- xf86RandR12Init() is a noop
- PanoramiXExtensionInit sets noPanoramiXExtension to TRUE
- xf86RandR12CreateScreenResources tries to use the devPrivates key it never
  initialized.

This hack checks if there's only one screen at the time RandR12 is
initialized. If so, we expect Xinerama to fail anyhow so we disable it
ourselves and proceed as planned.

X.Org Bug 24627 http://bugs.freedesktop.org/show_bug.cgi?id=24627

Signed-off-by: Peter Hutterer peter.hutte...@who-t.net
Signed-off-by: Keith Packard kei...@keithp.com
(cherry picked from commit faca1bc582e374d32ee9d63d10e072fbef4940a3)

diff --git a/hw/xfree86/modes/xf86RandR12.c b/hw/xfree86/modes/xf86RandR12.c
index 6ea9d26..1fc63c4 100644
--- a/hw/xfree86/modes/xf86RandR12.c
+++ b/hw/xfree86/modes/xf86RandR12.c
@@ -871,7 +871,12 @@ xf86RandR12Init (ScreenPtr pScreen)
 #ifdef PANORAMIX
 /* XXX disable RandR when using Xinerama */
 if 

xorg-server: Changes to 'upstream-unstable'

2009-10-13 Thread Julien Cristau
 configure.ac   |4 ++--
 hw/kdrive/ephyr/Xephyr.man.pre |5 +
 hw/kdrive/ephyr/ephyrinit.c|   16 +++-
 hw/xfree86/common/xf86DGA.c|   29 -
 hw/xfree86/modes/xf86Crtc.c|4 ++--
 hw/xfree86/modes/xf86Crtc.h|8 
 hw/xfree86/modes/xf86DiDGA.c   |   15 ---
 7 files changed, 60 insertions(+), 21 deletions(-)

New commits:
commit 439c58849304907900e4dc7429aedb0192749c02
Author: Keith Packard kei...@keithp.com
Date:   Sun Oct 11 22:03:32 2009 -0700

Bump version to 1.6.5

Signed-off-by: Keith Packard kei...@keithp.com

diff --git a/configure.ac b/configure.ac
index e51a18b..df3089f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,12 +26,12 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.57)
-AC_INIT([xorg-server], 1.6.4.901, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+AC_INIT([xorg-server], 1.6.5, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([dist-bzip2 foreign])
 AM_MAINTAINER_MODE
 
-RELEASE_DATE=2009-10-1
+RELEASE_DATE=2009-10-11
 
 dnl this gets generated by autoheader, and thus contains all the defines.  we
 dnl don't ever actually use it, internally.

commit 7f2f71da5125ae01a8279a4886090a711100d671
Author: Peter Hutterer peter.hutte...@who-t.net
Date:   Mon Sep 28 14:18:45 2009 +1000

ephyr: if -parent is given, check for a trailing -screen. (#24144)

If -parent is given, don't open up a new window if -screen is given as well.
The commandline option -screen allows to set the depth of the embedded
Xephry instance, even though width and height are autoscaled on -parent.

This patch checks for a -screen parameter after -parent and - if one is
found - delays initializing the screen. The parent window id is stored
temporarily but re-set after a -screen argument.
The following command is thus valid:

Xephyr -parent 1234 -screen 640x...@8 -screen 1024x768

It embeds the first 8-bit screen into window 1234 and opens up a new window
for the second screen. Multiple parent arguments are possible, the screens
are embedded in-order.

X.Org Bug 24144 http://bugs.freedesktop.org/show_bug.cgi?id=24144

Tested-by: Vic Lee
Signed-off-by: Peter Hutterer peter.hutte...@who-t.net
(cherry picked from commit 19be992d9dc542b61fa3f4fd32a09071c9e64880)

Signed-off-by: Keith Packard kei...@keithp.com

diff --git a/hw/kdrive/ephyr/Xephyr.man.pre b/hw/kdrive/ephyr/Xephyr.man.pre
index 7f0e811..34a2971 100644
--- a/hw/kdrive/ephyr/Xephyr.man.pre
+++ b/hw/kdrive/ephyr/Xephyr.man.pre
@@ -46,6 +46,11 @@ sets the screen size.
 .BI -parent  id
 uses exiting window
 .I id .
+If a 
+.BI -screen 
+argument follows a 
+.BI -parent
+argument, this screen is embedded into the given window.
 .TP 8
 .B -host-cursor
 set 'cursor acceleration':
diff --git a/hw/kdrive/ephyr/ephyrinit.c b/hw/kdrive/ephyr/ephyrinit.c
index 1399d7a..d20f9b6 100644
--- a/hw/kdrive/ephyr/ephyrinit.c
+++ b/hw/kdrive/ephyr/ephyrinit.c
@@ -147,6 +147,7 @@ processScreenArg (char *screen_size, char *parent_id)
 int
 ddxProcessArgument (int argc, char **argv, int i)
 {
+  static char* parent = NULL;
   EPHYR_DBG(mark argv[%d]='%s', i, argv[i] );
 
   if (i == 1)
@@ -158,6 +159,18 @@ ddxProcessArgument (int argc, char **argv, int i)
 {
   if(i+1  argc)
{
+ int j;
+ /* If parent is specified and a screen argument follows, don't do
+   * anything, let the -screen handling init the rest */
+ for (j = i; j  argc; j++)
+   {
+ if (!strcmp(argv[j], -screen))
+   {
+ parent = argv[i + 1];
+ return 2;
+   }
+   }
+
  processScreenArg (100x100, argv[i+1]);
  return 2;
}
@@ -169,7 +182,8 @@ ddxProcessArgument (int argc, char **argv, int i)
 {
   if ((i+1)  argc)
{
- processScreenArg (argv[i+1], NULL);
+ processScreenArg (argv[i+1], parent);
+ parent = NULL;
  return 2;
}
 

commit c07b2368a7dedb66455eea313c06859afa2e1a9c
Author: Keith Packard kei...@keithp.com
Date:   Thu Oct 1 15:24:58 2009 -0700

Bump to version 1.6.4.901

Signed-off-by: Keith Packard kei...@keithp.com

diff --git a/configure.ac b/configure.ac
index 3c19b35..e51a18b 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,12 +26,12 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.57)
-AC_INIT([xorg-server], 1.6.4, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+AC_INIT([xorg-server], 1.6.4.901, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([dist-bzip2 foreign])
 AM_MAINTAINER_MODE
 
-RELEASE_DATE=2009-9-27

xorg-server: Changes to 'upstream-unstable'

2009-09-28 Thread Brice Goglin
 Xext/dpms.c|   17 +
 configure.ac   |4 -
 dix/dixfonts.c |   29 -
 dix/getevents.c|4 -
 hw/xfree86/common/xf86Config.c |   16 -
 hw/xfree86/dri2/dri2.c |   12 +++-
 hw/xfree86/fbdevhw/fbdevhw.c   |8 ++
 hw/xfree86/modes/xf86Crtc.c|7 ++
 hw/xfree86/modes/xf86DiDGA.c   |  119 +++--
 hw/xfree86/modes/xf86RandR12.c |4 -
 mi/mieq.c  |4 -
 render/render.c|7 +-
 12 files changed, 87 insertions(+), 144 deletions(-)

New commits:
commit 8cf659f3a5914369a2137ac17b689e5a9fe9ca27
Author: Keith Packard kei...@keithp.com
Date:   Sun Sep 27 19:21:45 2009 -0700

Bump to version 1.6.4

Signed-off-by: Keith Packard kei...@keithp.com

diff --git a/configure.ac b/configure.ac
index 9bb566c..3c19b35 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,12 +26,12 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.57)
-AC_INIT([xorg-server], 1.6.3.901, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+AC_INIT([xorg-server], 1.6.4, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([dist-bzip2 foreign])
 AM_MAINTAINER_MODE
 
-RELEASE_DATE=2009-8-25
+RELEASE_DATE=2009-9-27
 
 dnl this gets generated by autoheader, and thus contains all the defines.  we
 dnl don't ever actually use it, internally.

commit a26fd1a6d61507b3e69a04d6f6c192a6ec363c5c
Author: Peter Hutterer peter.hutte...@who-t.net
Date:   Wed Sep 16 15:46:55 2009 +1000

Don't send events through the master if the device has SendCoreEvents off.

In server 1.6, all devices are attached to the master device (VCP or VCK).
Sending an event through the master device means the device is sending core
events. If a device is configured as SendCoreEvents, just send through the
device, not through the master.

Signed-off-by: Peter Hutterer peter.hutte...@who-t.net

diff --git a/dix/getevents.c b/dix/getevents.c
index 9747b35..eadcbeb 100644
--- a/dix/getevents.c
+++ b/dix/getevents.c
@@ -536,7 +536,7 @@ static EventListPtr
 updateFromMaster(EventListPtr events, DeviceIntPtr dev, int *num_events)
 {
 DeviceIntPtr master = dev-u.master;
-if (master  master-u.lastSlave != dev)
+if (master  master-u.lastSlave != dev  dev-coreEvents)
 {
 updateSlaveDeviceCoords(master, dev);
 master-u.lastSlave = dev;
@@ -674,7 +674,7 @@ positionSprite(DeviceIntPtr dev, int *x, int *y,
  * to the current screen. */
 miPointerSetPosition(dev, dev-last.valuators[0], 
dev-last.valuators[1]);
 
-if (dev-u.master) {
+if (dev-u.master  dev-coreEvents) {
 dev-u.master-last.valuators[0] = dev-last.valuators[0];
 dev-u.master-last.valuators[1] = dev-last.valuators[1];
 }
diff --git a/mi/mieq.c b/mi/mieq.c
index 213ad5b..478e68b 100644
--- a/mi/mieq.c
+++ b/mi/mieq.c
@@ -446,7 +446,7 @@ mieqProcessInputEvents(void)
 NewCurrentScreen (dev, DequeueScreen(dev), x, y);
 }
 else {
-if (master) {
+if (master  dev-coreEvents) {
 /* Force a copy of the key class into the VCK so that the 
layout
is transferred. */
 if (event-u.u.type == DeviceKeyPress ||
@@ -473,7 +473,7 @@ mieqProcessInputEvents(void)
 /* process slave first, then master */
 dev-public.processInputProc(event, dev, nevents);
 
-if (master)
+if (master  dev-coreEvents)
 master-public.processInputProc(masterEvents-event, 
master,
 nevents);
 }

commit 507e57381fea6334f7dc8da6925e53d2c76fddcb
Author: Keith Packard kei...@keithp.com
Date:   Fri Sep 18 21:12:17 2009 -0700

xfree86/modes: Remove all framebuffer support from DGA

This removes all rendering and mapping code from xf86DiDGA, leaving
just mode setting and raw input device access. The mapping code didn't
have the offset within /dev/mem for the frame buffer and the pixmap
support assumed that the framebuffer was never reallocated.
(cherry picked from 0b7c6c728c2e2d8433a188315cc591308a89cd85)

Signed-off-by: Keith Packard kei...@keithp.com
Signed-off-by: Peter Hutterer peter.hutte...@who-t.net

diff --git a/hw/xfree86/modes/xf86Crtc.c b/hw/xfree86/modes/xf86Crtc.c
index e9bde36..899cea5 100644
--- a/hw/xfree86/modes/xf86Crtc.c
+++ b/hw/xfree86/modes/xf86Crtc.c
@@ -769,6 +769,9 @@ xf86CrtcScreenInit (ScreenPtr screen)
 config-CloseScreen = screen-CloseScreen;
 screen-CloseScreen = xf86CrtcCloseScreen;
 
+#ifdef XFreeXDGA
+xf86DiDGAInit(screen, 0);
+#endif
 #ifdef RANDR_13_INTERFACE
 return RANDR_INTERFACE_VERSION;
 #else
@@ -1882,6 +1885,10 @@ xf86SetScrnInfoModes 

xorg-server: Changes to 'upstream-unstable'

2009-09-14 Thread Julien Cristau
 Xext/sync.c|   32 ++--
 Xext/xtest.c   |2 +-
 config/hal.c   |   21 +++--
 configure.ac   |8 
 dix/dispatch.c |   22 +-
 dix/events.c   |4 ++--
 dix/window.c   |2 --
 glx/glxext.c   |   27 +++
 hw/xfree86/modes/xf86Cursors.c |6 --
 hw/xfree86/modes/xf86Rotate.c  |7 +--
 include/dix.h  |6 ++
 11 files changed, 95 insertions(+), 42 deletions(-)

New commits:
commit 3044711412d0a08ba65a491bd2441c0c8980f5e2
Author: Keith Packard kei...@keithp.com
Date:   Tue Aug 25 22:37:16 2009 -0700

Bump version to 1.6.3.901 (1.6.4 RC1)

Signed-off-by: Keith Packard kei...@keithp.com

diff --git a/configure.ac b/configure.ac
index b8a3385..9bb566c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,12 +26,12 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.57)
-AC_INIT([xorg-server], 1.6.3, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+AC_INIT([xorg-server], 1.6.3.901, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([dist-bzip2 foreign])
 AM_MAINTAINER_MODE
 
-RELEASE_DATE=2009-7-31
+RELEASE_DATE=2009-8-25
 
 dnl this gets generated by autoheader, and thus contains all the defines.  we
 dnl don't ever actually use it, internally.

commit d8e48deb212767c4dfce982e6cb9d1b1fce63b96
Author: Keith Packard kei...@keithp.com
Date:   Tue Aug 25 22:29:25 2009 -0700

Block signals while delivering XTest events (fixes bug 23100)

XTest uses the same event list as all input devices, and input devices
use it at SIGIO time. This causes mass confusion when a SIGIO event
occurs in the middle of XTest event processing.

The master branch has a much different fix, using a separate input
queue which reduces latency that may be caused by XTest event queuing;
it's a 'nicer' fix in some ways, but this simple fix should solve the
problem.

Reviewed-by: Peter Hutterer peter.hutte...@who-t.net
Signed-off-by: Keith Packard kei...@keithp.com

diff --git a/Xext/xtest.c b/Xext/xtest.c
index 9cfe8ca..e5ab7b4 100644
--- a/Xext/xtest.c
+++ b/Xext/xtest.c
@@ -384,6 +384,7 @@ ProcXTestFakeInput(client)
 if (screenIsSaved == SCREEN_SAVER_ON)
 dixSaveScreens(serverClient, SCREEN_SAVER_OFF, ScreenSaverReset);
 
+OsBlockSignals();
 GetEventList(events);
 switch(type) {
 case MotionNotify:
@@ -402,7 +403,6 @@ ProcXTestFakeInput(client)
 break;
 }
 
-OsBlockSignals();
 for (i = 0; i  nevents; i++)
 mieqEnqueue(dev, (events+i)-event);
 OsReleaseSignals();

commit 76a1839b0a7dcb82e46c43533d252288677c6dbb
Author: Keith Packard kei...@keithp.com
Date:   Tue Aug 25 18:07:00 2009 -0700

Ensure that rotation updates happen frequently

The smart scheduler is designed to minimize scheduler overhead by
increasing the interval between WaitForSomething calls when a single
client is running. However, the software rotation code depends on
its BlockHandler being invoked for screen updates; the long delays
caused by the smart scheduler optimizations means that screen updates
can be delayed a long time as well.

The change is simple -- prevent the smart scheduler from increasing
the scheduling interval while any screen is using software rotation.
(cherry picked from commit e7dd1efef408effe52d0bd3d3aa0b5d4ee10ed90)

Signed-off-by: Keith Packard kei...@keithp.com

diff --git a/dix/dispatch.c b/dix/dispatch.c
index 1ca08b6..7e16589 100644
--- a/dix/dispatch.c
+++ b/dix/dispatch.c
@@ -247,6 +247,7 @@ longSmartScheduleSlice = 
SMART_SCHEDULE_DEFAULT_INTERVAL;
 long   SmartScheduleInterval = SMART_SCHEDULE_DEFAULT_INTERVAL;
 long   SmartScheduleMaxSlice = SMART_SCHEDULE_MAX_SLICE;
 long   SmartScheduleTime;
+intSmartScheduleLatencyLimited = 0;
 static ClientPtr   SmartLastClient;
 static intSmartLastIndex[SMART_MAX_PRIORITY-SMART_MIN_PRIORITY+1];
 
@@ -317,7 +318,7 @@ SmartScheduleClient (int *clientReady, int nready)
 /*
  * Adjust slice
  */
-if (nready == 1)
+if (nready == 1  SmartScheduleLatencyLimited == 0)
 {
/*
 * If it's been a long time since another client
@@ -337,6 +338,23 @@ SmartScheduleClient (int *clientReady, int nready)
 return best;
 }
 
+void
+EnableLimitedSchedulingLatency(void)
+{
+++SmartScheduleLatencyLimited;
+SmartScheduleSlice = SmartScheduleInterval;
+}
+
+void
+DisableLimitedSchedulingLatency(void)
+{
+--SmartScheduleLatencyLimited;
+
+/* protect against bugs */
+if (SmartScheduleLatencyLimited  0)
+   SmartScheduleLatencyLimited = 0;
+}
+
 #define MAJOROP 

xorg-server: Changes to 'upstream-unstable'

2009-08-01 Thread Brice Goglin
 Xext/xselinux.c  |4 
 config/hal.c |   37 ++---
 configure.ac |6 +++---
 hw/xfree86/modes/xf86EdidModes.c |5 +
 4 files changed, 38 insertions(+), 14 deletions(-)

New commits:
commit f274e595ed56722450f6ecebad70500c92e50c58
Author: Keith Packard kei...@keithp.com
Date:   Fri Jul 31 23:37:53 2009 -0700

Bump release number to 1.6.3

Signed-off-by: Keith Packard kei...@keithp.com

diff --git a/configure.ac b/configure.ac
index c8aedc9..fe7978f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,12 +26,12 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.57)
-AC_INIT([xorg-server], 1.6.2.901, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+AC_INIT([xorg-server], 1.6.3, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([dist-bzip2 foreign])
 AM_MAINTAINER_MODE
 
-RELEASE_DATE=2009-7-26
+RELEASE_DATE=2009-7-31
 
 dnl this gets generated by autoheader, and thus contains all the defines.  we
 dnl don't ever actually use it, internally.

commit 55dcfdbbd6a2a4debb717b104c4b54f4a2c76fff
Author: Alan Coopersmith alan.coopersm...@sun.com
Date:   Tue Jul 28 15:02:37 2009 -0700

Remove hardcoded gcc -Wall option from configure.ac

Signed-off-by: Alan Coopersmith alan.coopersm...@sun.com
(cherry picked from commit 442967c90dd9d8483a56bdc9237c49e33d619126)

diff --git a/configure.ac b/configure.ac
index 792c622..c8aedc9 100644
--- a/configure.ac
+++ b/configure.ac
@@ -880,7 +880,7 @@ fi
 
 if test x$DRI2 = xyes; then
save_CFLAGS=$CFLAGS
-   CFLAGS=$GL_CFLAGS $LIBDRM_CFLAGS -Wall
+   CFLAGS=$GL_CFLAGS $LIBDRM_CFLAGS
AC_COMPILE_IFELSE([AC_LANG_SOURCE([[#include GL/gl.h
 #include GL/internal/dri_interface.h
 #ifndef __DRI_DRI2

commit 4d349b6c333449517913a5e981b4fc3155da4855
Author: Adam Jackson a...@redhat.com
Date:   Fri Mar 27 15:56:15 2009 -0400

selinux: Only activate if policy says to be an object manager
(cherry picked from commit 283a081572d8db787c77d09e5ba6bcadebf4f7fe)

diff --git a/Xext/xselinux.c b/Xext/xselinux.c
index 4f4254a..3124eb9 100644
--- a/Xext/xselinux.c
+++ b/Xext/xselinux.c
@@ -1989,6 +1989,10 @@ SELinuxExtensionInit(INITARGS)
return;
 }
 
+/* Don't init unless there's something to do */
+if (!security_get_boolean_active(xserver_object_manager))
+return;
+
 /* Check SELinux mode in configuration file */
 switch(selinuxEnforcingState) {
 case SELINUX_MODE_DISABLED:

commit d0875154f4f4b751264a2f6781500e97409a499b
Author: Ben Skeggs bske...@redhat.com
Date:   Wed May 27 15:24:34 2009 +1000

quirk: use first detailed timing as preferred for PEA prod 9003 (rh#492359)

Signed-off-by: Peter Hutterer peter.hutte...@who-t.net
(cherry picked from commit 048697ccfa31cf7f7a29afa90a2f702d43efb7d4)

diff --git a/hw/xfree86/modes/xf86EdidModes.c b/hw/xfree86/modes/xf86EdidModes.c
index 087f663..6256fda 100644
--- a/hw/xfree86/modes/xf86EdidModes.c
+++ b/hw/xfree86/modes/xf86EdidModes.c
@@ -205,6 +205,11 @@ static Bool quirk_first_detailed_preferred (int scrnIndex, 
xf86MonPtr DDC)
DDC-vendor.prod_id == 2423)
return TRUE;
 
+/* Peacock Ergovision 19.  See rh#492359 */
+if (memcmp (DDC-vendor.name, PEA, 4) == 0 
+   DDC-vendor.prod_id == 9003)
+   return TRUE;
+
 return FALSE;
 }
 

commit c941479ecc2dead9c3deaee2620c9b9518c3da9a
Author: Rémi Cardona r...@gentoo.org
Date:   Mon Jul 27 12:07:51 2009 +0200

config: add HAL error checks

This patch simplifies error handling in the HAL code and fixes a
segfault if libhal_find_device_by_capability() failed.

Fixes http://bugs.gentoo.org/278760

Based on a patch by Martin von Gagern martin.vgag...@gmx.net

Signed-off-by: Rémi Cardona r...@gentoo.org
Acked-by: Peter Hutterer peter.hutte...@who-t.net
(cherry picked from commit b1c3dc6ae226db178420e3b5f297b94afc87c94c)

diff --git a/config/hal.c b/config/hal.c
index 731d9b8..59bff66 100644
--- a/config/hal.c
+++ b/config/hal.c
@@ -474,13 +474,13 @@ connect_and_register(DBusConnection *connection, struct 
config_hal_info *info)
 char **devices;
 int num_devices, i;
 
+if (info-hal_ctx)
+return TRUE; /* already registered, pretend we did something */
+
 info-system_bus = connection;
 
 dbus_error_init(error);
 
-if (info-hal_ctx)
-return TRUE; /* already registered, pretend we did something */
-
 info-hal_ctx = libhal_ctx_new();
 if (!info-hal_ctx) {
 LogMessage(X_ERROR, config/hal: couldn't create HAL context\n);
@@ -501,7 +501,7 @@ connect_and_register(DBusConnection *connection, struct 
config_hal_info *info)
 LogMessage(X_ERROR, config/hal: couldn't watch all properties: %s 
(%s)\n,
   error.name ? error.name : 

xorg-server: Changes to 'upstream-unstable'

2009-07-26 Thread Brice Goglin
 Xext/saver.c|8 +++
 Xext/security.c |4 +--
 Xext/shape.c|2 -
 Xext/sync.c |2 -
 Xext/xselinux.c |2 -
 Xext/xtest.c|6 ++---
 Xi/exevents.c   |2 -
 composite/compext.c |   10 -
 configure.ac|   10 -
 dix/cursor.c|8 +++
 dix/deprecated.c|   34 +++
 dix/dispatch.c  |   48 ++--
 dix/dixutils.c  |4 +--
 dix/events.c|   12 +--
 dix/gc.c|8 +++
 dix/resource.c  |   39 +++
 dix/window.c|8 +++
 exa/exa_accel.c |   12 ++-
 hw/xfree86/modes/xf86Crtc.c |   17 ++-
 include/resource.h  |   38 ++
 randr/rrscreen.c|5 ++--
 randr/rrtransform.c |6 ++---
 render/picture.c|4 +--
 render/render.c |8 +++
 xfixes/cursor.c |4 +--
 xfixes/region.c |6 ++---
 26 files changed, 187 insertions(+), 120 deletions(-)

New commits:
commit 155cb2f9a376d40b699a72ac3bdede71af1b518f
Author: Keith Packard kei...@keithp.com
Date:   Sun Jul 26 14:22:35 2009 -0700

Bump to version 1.6.2.901 (1.6.3 RC1)

Signed-off-by: Keith Packard kei...@keithp.com

diff --git a/configure.ac b/configure.ac
index e0e9b30..792c622 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,12 +26,12 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.57)
-AC_INIT([xorg-server], 1.6.2, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+AC_INIT([xorg-server], 1.6.2.901, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([dist-bzip2 foreign])
 AM_MAINTAINER_MODE
 
-RELEASE_DATE=2009-7-7
+RELEASE_DATE=2009-7-26
 
 dnl this gets generated by autoheader, and thus contains all the defines.  we
 dnl don't ever actually use it, internally.

commit 87900645c22d6066fe70190ab838a687808db5c3
Author: Dave Airlie airl...@redhat.com
Date:   Thu Jun 11 14:21:53 2009 +1000

xfree86: move didLock assignment down to where the function pointer is 
valid.

crtc-funcs-lock is NULL, so it's no use calling it here. Move it down so
it's actually defined before we use it.

Introduced with 6f59a8160042ea145514fdcb410f17f33fd437c2.

Tested-by: Peter Hutterer peter.hutte...@who-t.net
(cherry picked from commit 0de58c88aba7ddd69b04f24ab5b2967c359aa69e)

Signed-off-by: Keith Packard kei...@keithp.com

diff --git a/hw/xfree86/modes/xf86Crtc.c b/hw/xfree86/modes/xf86Crtc.c
index aec904e..e9bde36 100644
--- a/hw/xfree86/modes/xf86Crtc.c
+++ b/hw/xfree86/modes/xf86Crtc.c
@@ -265,7 +265,6 @@ xf86CrtcSetModeTransform (xf86CrtcPtr crtc, DisplayModePtr 
mode, Rotation rotati
 
 adjusted_mode = xf86DuplicateMode(mode);
 
-didLock = crtc-funcs-lock (crtc);
 
 saved_mode = crtc-mode;
 saved_x = crtc-x;
@@ -295,6 +294,7 @@ xf86CrtcSetModeTransform (xf86CrtcPtr crtc, DisplayModePtr 
mode, Rotation rotati
goto done;
 }
 
+didLock = crtc-funcs-lock (crtc);
 /* Pass our mode to the outputs and the CRTC to give them a chance to
  * adjust it according to limitations or output properties, and also
  * a chance to reject the mode entirely.

commit 72c9bc64ff86999a4643663e5699a6547a9e2997
Author: Benjamin Defnet benjamin.r.def...@intel.com
Date:   Wed Jun 10 21:35:48 2009 -0700

randr: fix operation order so that rotation+transform works

The matrix multiply to combine rotation and projective transforms was being
done in the wrong order.

Signed-off-by: Keith Packard kei...@keithp.com
(cherry picked from commit b2bf67b61c564a4b92a429ca9ad455403161f33a)

Signed-off-by: Keith Packard kei...@keithp.com

diff --git a/randr/rrtransform.c b/randr/rrtransform.c
index 8bdff5a..06f6298 100644
--- a/randr/rrtransform.c
+++ b/randr/rrtransform.c
@@ -251,10 +251,10 @@ RRTransformCompute (int   x,
 #ifdef RANDR_12_INTERFACE
 if (rr_transform)
 {
-if (!pixman_transform_multiply (transform, transform, 
rr_transform-transform))
+if (!pixman_transform_multiply (transform, rr_transform-transform, 
transform))
overflow = TRUE;
-   pixman_f_transform_multiply (f_transform, f_transform, 
rr_transform-f_transform);
-   pixman_f_transform_multiply (f_inverse, rr_transform-f_inverse, 
f_inverse);
+   pixman_f_transform_multiply (f_transform, rr_transform-f_transform, 
f_transform);
+   pixman_f_transform_multiply (f_inverse, f_inverse, 
rr_transform-f_inverse);
 }
 #endif
 /*

commit 7f95d18397757facafcba39e4613b2ed5047c5c4
Author: 

xorg-server: Changes to 'upstream-unstable'

2009-07-13 Thread Brice Goglin
 COPYING  |  793 ---
 Xext/geext.c |2 
 Xext/panoramiX.c |6 
 configure.ac |4 
 dix/devices.c|2 
 dix/events.c |2 
 doc/Xserver.man.pre  |2 
 exa/exa_accel.c  |   35 -
 exa/exa_glyphs.c |   73 +--
 exa/exa_priv.h   |   10 
 exa/exa_render.c |2 
 exa/exa_unaccel.c|2 
 glx/glxcmds.c|   44 +
 glx/glxdrawable.h|3 
 glx/glxdri.c |2 
 glx/glxdri2.c|   51 ++
 hw/kdrive/src/kinput.c   |4 
 hw/xfree86/common/Makefile.am|2 
 hw/xfree86/common/xf86Config.c   |5 
 hw/xfree86/ddc/print_edid.c  |6 
 hw/xfree86/doc/man/xorg.conf.man.pre |   11 
 hw/xfree86/dri2/dri2.c   |  253 ---
 hw/xfree86/dri2/dri2.h   |   21 
 hw/xfree86/dri2/dri2ext.c|6 
 hw/xfree86/exa/examodule.c   |2 
 hw/xfree86/loader/loader.c   |2 
 hw/xfree86/parser/Makefile.am|   10 
 hw/xfree86/ramdac/xf86Cursor.c   |6 
 os/xdmcp.c   |4 
 randr/randr.c|   11 
 randr/rrcrtc.c   |5 
 randr/rrscreen.c |4 
 xkb/xkb.c|8 
 33 files changed, 519 insertions(+), 874 deletions(-)

New commits:
commit 606f6dba16d42e3546a82a386d5a01087467b511
Author: Adam Jackson a...@redhat.com
Date:   Tue Apr 14 10:54:25 2009 -0400

xdmcp: Don't crash on X -query with more than 255 IP addresses. (#20675)

You could be more clever than this, but the wire protocol says this
really is an array of not more than 255 ARRAY8, so it's not just a
matter of changing the types.

(cherry picked from commit 0eb19f9437b7d8c19592e49eedb028771d300d80)

diff --git a/os/xdmcp.c b/os/xdmcp.c
index 736cd3e..746f598 100644
--- a/os/xdmcp.c
+++ b/os/xdmcp.c
@@ -491,7 +491,9 @@ XdmcpRegisterConnection (
return;
}
 }
-newAddress = (CARD8 *) xalloc (addrlen * sizeof (CARD8));
+if (ConnectionAddresses.length + 1 == 256)
+   return;
+newAddress = xalloc (addrlen * sizeof (CARD8));
 if (!newAddress)
return;
 if (!XdmcpReallocARRAY16 (ConnectionTypes, ConnectionTypes.length + 1))

commit 396d3a7762abd0dd84042833b75f2ebf9d100bb0
Author: Alan Coopersmith alan.coopersm...@sun.com
Date:   Wed Jul 8 11:26:46 2009 -0700

Fix build of drivers with 1.6.2 when not using --install-libxf86config

c859b736d1d23c5dc2f53958b1e76660e6d45018 removed duplicate entries for
these from the Makefile, but removed a different set than was done in
master branch, causing xf86Parser.h to not be installed, which in turn
breaks the build of drivers like -ati, -intel  -nv that use xf86Modes.h,
which includes xf86Parser.h

Signed-off-by: Alan Coopersmith alan.coopersm...@sun.com
Signed-off-by: Keith Packard kei...@keithp.com

diff --git a/hw/xfree86/parser/Makefile.am b/hw/xfree86/parser/Makefile.am
index 6ed1814..a2774a4 100644
--- a/hw/xfree86/parser/Makefile.am
+++ b/hw/xfree86/parser/Makefile.am
@@ -1,8 +1,5 @@
 if INSTALL_LIBXF86CONFIG
 lib_LIBRARIES = libxf86config.a
-LIBHEADERS = \
-   xf86Optrec.h \
-   xf86Parser.h
 else
 noinst_LIBRARIES = libxf86config.a
 endif
@@ -30,9 +27,8 @@ AM_CFLAGS = $(DIX_CFLAGS) $(XORG_CFLAGS)
 EXTRA_DIST = \
Configint.h \
configProcs.h \
-   xf86Optrec.h \
-   xf86Parser.h \
xf86tokens.h
 
 sdk_HEADERS = \
-   $(LIBHEADERS)
+   xf86Optrec.h \
+   xf86Parser.h

commit 6f1aff5a2b45bc2985081abc240a8fed37170386
Author: Keith Packard kei...@keithp.com
Date:   Mon Jul 6 14:08:31 2009 -0700

Bump to version 1.6.2

Signed-off-by: Keith Packard kei...@keithp.com

diff --git a/configure.ac b/configure.ac
index 339172f..71cc30c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,12 +26,12 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.57)
-AC_INIT([xorg-server], 1.6.1.902, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+AC_INIT([xorg-server], 1.6.2, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([dist-bzip2 foreign])
 AM_MAINTAINER_MODE
 
-RELEASE_DATE=2009-6-29
+RELEASE_DATE=2009-7-7
 
 dnl this gets generated by autoheader, and thus contains all the defines.  we
 dnl don't ever actually use it, internally.

commit 499f9f62e408510ed4efb6f2321a3f851f535567
Author: Keith Packard kei...@keithp.com
Date:   Wed Jul 1 14:01:57 2009 -0700

dri2: Preserve compatibility with 1.6 DRI2 API/ABI

The old DRI2 buffer 

xorg-server: Changes to 'upstream-unstable'

2009-06-23 Thread Julien Cristau
 configure.ac |2 
 dix/events.c |6 -
 glx/glxdri2.c|   82 +-
 hw/vfb/InitOutput.c  |   30 -
 hw/xfree86/common/xf86pciBus.c   |   10 -
 hw/xfree86/ddc/edid.h|2 
 hw/xfree86/ddc/interpret_edid.c  |7 -
 hw/xfree86/dri2/dri2.c   |  217 ++-
 hw/xfree86/dri2/dri2.h   |   46 +++-
 hw/xfree86/dri2/dri2ext.c|   96 +
 hw/xfree86/modes/xf86EdidModes.c |   87 +++
 11 files changed, 487 insertions(+), 98 deletions(-)

New commits:
commit dbac41b624e4aa86a6a184b7ebb52bfdd367bbf0
Author: Adam Jackson a...@redhat.com
Date:   Fri Jun 19 12:42:07 2009 -0400

pci: Dump vendor/devices ids in the printed device list
(cherry picked from commit eb35402d0a5290e8a73d7d1e92f173294c364cc2)

diff --git a/hw/xfree86/common/xf86pciBus.c b/hw/xfree86/common/xf86pciBus.c
index 467a0c3..5b29a15 100644
--- a/hw/xfree86/common/xf86pciBus.c
+++ b/hw/xfree86/common/xf86pciBus.c
@@ -417,18 +417,16 @@ xf86PciProbe(void)
if (xf86IsPrimaryPci(info))
prim = *;
 
-   xf86Msg( X_PROBED, PCI:%s(%...@%u:%u:%u) , prim, info-domain,
-info-bus, info-dev, info-func );
+   xf86Msg(X_PROBED, PCI:%s(%u:%u:%u:%u) %04x:%04x:%04x:%04x , prim,
+   info-domain, info-bus, info-dev, info-func,
+   info-vendor_id, info-device_id,
+   info-subvendor_id, info-subdevice_id);
 
if (vendorname)
xf86ErrorF(%s , vendorname);
-   else
-   xf86ErrorF(unknown vendor (0x%04x) , info-vendor_id);
 
if (chipname)
xf86ErrorF(%s , chipname);
-   else
-   xf86ErrorF(unknown chipset (0x%04x) , info-device_id);
 
xf86ErrorF(rev %d, info-revision);
 

commit 6be19e8f43086fb4b7fb30a47b89b5f3eed798ef
Author: Ian Romanick ian.d.roman...@intel.com
Date:   Wed Apr 8 14:54:30 2009 -0700

Use a #define instead of a magic number

The number of buffers is likely to change in the future, so having
this as a define is the right way to go.

Signed-off-by: Ian Romanick ian.d.roman...@intel.com
(cherry picked from commit 03aebed519986c4dd03e02b3b3d4af1f64595ca7)

diff --git a/glx/glxdri2.c b/glx/glxdri2.c
index c671670..f2682d4 100644
--- a/glx/glxdri2.c
+++ b/glx/glxdri2.c
@@ -82,6 +82,8 @@ struct __GLXDRIcontext {
 __DRIcontext   *driContext;
 };
 
+#define MAX_DRAWABLE_BUFFERS 5
+
 struct __GLXDRIdrawable {
 __GLXdrawable   base;
 __DRIdrawable  *driDrawable;
@@ -90,7 +92,7 @@ struct __GLXDRIdrawable {
 /* Dimensions as last reported by DRI2GetBuffers. */
 int width;
 int height;
-__DRIbuffer buffers[5];
+__DRIbuffer buffers[MAX_DRAWABLE_BUFFERS];
 int count;
 };
 
@@ -365,7 +367,7 @@ dri2GetBuffers(__DRIdrawable *driDrawable,
 
 buffers = DRI2GetBuffers(private-base.pDraw,
 width, height, attachments, count, out_count);
-if (*out_count  5) {
+if (*out_count  MAX_DRAWABLE_BUFFERS) {
*out_count = 0;
return NULL;
 }

commit 540d5b87a4e24d85ec46620dfedd7bd7979180ea
Author: Jerome Glisse gli...@freedesktop.org
Date:   Mon May 11 22:52:46 2009 +0200

DRI2: update DRI2 private drawable width  height according to X drawable
(cherry picked from commit f250eea2e90fc50bec5214c2f41132b95edc2c46)

diff --git a/hw/xfree86/dri2/dri2.c b/hw/xfree86/dri2/dri2.c
index 1d49d7c..385c5e8 100644
--- a/hw/xfree86/dri2/dri2.c
+++ b/hw/xfree86/dri2/dri2.c
@@ -257,6 +257,8 @@ do_get_buffers(DrawablePtr pDraw, int *width, int *height,
 
 pPriv-buffers = buffers;
 pPriv-bufferCount = *out_count;
+pPriv-width = pDraw-width;
+pPriv-height = pDraw-height;
 *width = pPriv-width;
 *height = pPriv-height;
 

commit ec9f1ae32474bc0507a3c66e63bdf2835d467a34
Author: Ian Romanick ian.d.roman...@intel.com
Date:   Mon Apr 27 15:11:10 2009 -0700

DRI2: Force allocation of real-front buffer for non-windows as well

For redirected rendering we end up with pixmaps (which the app thinks are
windows) that are double buffered.

Signed-off-by: Ian Romanick ian.d.roman...@intel.com
Tested-by: Pierre Willenbrock pie...@pirsoft.de
(cherry picked from commit 0d9d3f3e361f769822caedccf4c2a58cc9930ecc)

diff --git a/hw/xfree86/dri2/dri2.c b/hw/xfree86/dri2/dri2.c
index 9ded048..1d49d7c 100644
--- a/hw/xfree86/dri2/dri2.c
+++ b/hw/xfree86/dri2/dri2.c
@@ -206,18 +206,21 @@ do_get_buffers(DrawablePtr pDraw, int *width, int *height,
 * attachments.  The counting logic in the loop accounts for the case
 * where the client requests both the fake and real front-buffer.
 */
-   if (pDraw-type == DRAWABLE_WINDOW) {
-   if (attachment == DRI2BufferBackLeft) {
-   need_real_front++;
-   front_format = format;
-   }
+   if 

xorg-server: Changes to 'upstream-unstable'

2009-05-14 Thread Julien Cristau
 Xext/security.c   |   42 --
 Xext/xselinux.c   |9 ---
 Xi/exevents.c |3 +-
 Xi/xiproperty.c   |9 ---
 configure.ac  |4 +--
 dix/events.c  |   17 +
 dix/getevents.c   |   14 +++
 dix/protocol.txt  |   12 +
 doc/Xserver.man.pre   |7 -
 exa/exa.c |   13 ++
 exa/exa.h |   14 +++
 exa/exa_migration.c   |2 +
 exa/exa_unaccel.c |   25 +++-
 hw/xfree86/common/xf86Config.c|   13 --
 hw/xfree86/common/xf86Xinput.c|4 +++
 hw/xfree86/dixmods/extmod/xf86vmode.c |   16 
 hw/xfree86/doc/man/Xorg.man.pre   |3 --
 hw/xfree86/dri2/dri2ext.c |4 +--
 hw/xfree86/loader/loadmod.c   |3 +-
 hw/xfree86/modes/xf86Crtc.c   |   11 ++--
 hw/xfree86/modes/xf86EdidModes.c  |   10 
 hw/xfree86/modes/xf86RandR12.c|6 +++-
 os/log.c  |   22 -
 xkb/xkb.c |2 +
 24 files changed, 176 insertions(+), 89 deletions(-)

New commits:
commit a9f85dcefbadfe44d8c58ad08430aaadb8c59d34
Author: Eamon Walsh ewa...@tycho.nsa.gov
Date:   Mon May 11 15:27:46 2009 -0400

xselinux: Relax ownership restriction on SetSelectionUseContext.

Instead, clients should keep track of the selection instances they use.
(cherry picked from commit 0952d12717031e9dda9e48123bb922d0f4e81834)

Signed-off-by: Eamon Walsh ewa...@tycho.nsa.gov

diff --git a/Xext/xselinux.c b/Xext/xselinux.c
index 2a32bb8..6c99c29 100644
--- a/Xext/xselinux.c
+++ b/Xext/xselinux.c
@@ -1349,15 +1349,6 @@ ProcSELinuxSetCreateContext(ClientPtr client, unsigned 
offset)
goto out;
privPtr = serverClient-devPrivates;
 }
-else if (offset == USE_SEL) {
-   /* Selection use context currently requires no selections owned */
-   Selection *pSel;
-   for (pSel = CurrentSelections; pSel; pSel = pSel-next)
-   if (pSel-client == client) {
-   rc = BadMatch;
-   goto out;
-   }
-}
 
 ptr = dixLookupPrivate(privPtr, subjectKey);
 pSid = (security_id_t *)(ptr + offset);

commit 0fbf6f30f771e60714fb3003a9bb1a6b79e50c6e
Author: Alan Coopersmith alan.coopersm...@sun.com
Date:   Thu Mar 26 22:22:32 2009 -0700

Don't leak default font path when appending built-ins

Signed-off-by: Alan Coopersmith alan.coopersm...@sun.com
(cherry picked from commit 66539cc05d0b017b9feb4a038499907810140623)

Signed-off-by: Keith Packard kei...@keithp.com

diff --git a/hw/xfree86/common/xf86Config.c b/hw/xfree86/common/xf86Config.c
index 17223a1..9e56ca9 100644
--- a/hw/xfree86/common/xf86Config.c
+++ b/hw/xfree86/common/xf86Config.c
@@ -601,7 +601,9 @@ configFiles(XF86ConfFilesPtr fileconf)
defaultFontPath = Xprintf(%s%s%s,
  fileconf-file_fontpath,
  *temp_path ? , : , temp_path);
-   must_copy = FALSE;
+   if (defaultFontPath != NULL) {
+   must_copy = FALSE;
+   }
}
else
defaultFontPath = fileconf-file_fontpath;
@@ -617,7 +619,14 @@ configFiles(XF86ConfFilesPtr fileconf)
!((start == temp_path || start[-1] == ',')  (!*end || *end == ','))) {
defaultFontPath = Xprintf(%s%sbuilt-ins,
  temp_path, *temp_path ? , : );
-   must_copy = FALSE;
+   if (must_copy == TRUE) {
+   if (defaultFontPath != NULL) {
+   must_copy = FALSE;
+   }
+   } else {
+   /* already made a copy of the font path */
+   xfree(temp_path);
+   }
 }
 /* xf86ValidateFontPath modifies its argument, but returns a copy of it. */
 temp_path = must_copy ? XNFstrdup(defaultFontPath) : defaultFontPath;

commit 773e4890b385a229b0919b4a249714d0bb7171a2
Author: Alan Coopersmith alan.coopersm...@sun.com
Date:   Thu Mar 26 22:25:08 2009 -0700

Don't leak canonical module name and patterns if module is built-in

Signed-off-by: Alan Coopersmith alan.coopersm...@sun.com
Acked-by: Peter Hutterer peter.hutte...@who-t.net
(cherry picked from commit 1c101d75d4855b2698e3fc8d2dd662f20585812f)

Signed-off-by: Keith Packard kei...@keithp.com

diff --git a/hw/xfree86/loader/loadmod.c b/hw/xfree86/loader/loadmod.c
index e98f013..22b540c 100644
--- a/hw/xfree86/loader/loadmod.c
+++ b/hw/xfree86/loader/loadmod.c
@@ -867,7 +867,8 @@ doLoadModule(const char *module, const char *path, const 
char **subdirlist,
if (!strcmp (m, *cim))
{
xf86MsgVerb(X_INFO, 3, 

xorg-server: Changes to 'upstream-unstable'

2009-04-15 Thread Brice Goglin
 Makefile.am  |4 -
 Xext/xselinux.c  |  159 ---
 Xext/xtest.c |   14 ++-
 Xi/xiproperty.c  |  129 ++
 configure.ac |8 +-
 glx/Makefile.am  |1 
 glx/glxcmds.c|   44 ---
 glx/glxdrawable.h|5 -
 glx/glxdri.c |2 
 glx/glxdri2.c|2 
 glx/glxdriswrast.c   |2 
 glx/glxext.c |   42 ---
 glx/glxext.h |1 
 glx/glxutil.h|9 --
 hw/xfree86/modes/xf86Crtc.c  |4 -
 include/dix-config.h.in  |2 
 include/exevents.h   |   12 +++
 include/xserver-properties.h |4 +
 randr/rrdispatch.c   |2 
 xkb/xkbUtils.c   |4 -
 20 files changed, 347 insertions(+), 103 deletions(-)

New commits:
commit cd321badf0c185854b3e0c038f3851a3ac7864ea
Author: Adam Jackson a...@redhat.com
Date:   Tue Apr 14 16:08:11 2009 -0400

xserver 1.6.1

diff --git a/configure.ac b/configure.ac
index 1318d06..4c4c797 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,12 +26,12 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.57)
-AC_INIT([xorg-server], 1.6.0, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+AC_INIT([xorg-server], 1.6.1, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([dist-bzip2 foreign])
 AM_MAINTAINER_MODE
 
-RELEASE_DATE=2009-2-25
+RELEASE_DATE=2009-4-14
 
 dnl this gets generated by autoheader, and thus contains all the defines.  we
 dnl don't ever actually use it, internally.

commit fcffa3a178683ede0d15656c432fccf23ebca5ef
Author: Peter Hutterer peter.hutte...@who-t.net
Date:   Wed Mar 25 15:51:43 2009 +1000

Xext: set POINTER_SCREEN flag in XTestFakeInput if necessary. (RH #490984)

The POINTER_SCREEN flag must be set explicitly for XTest core events to 
avoid
out-of-range events when the lastSlave was an SD with an explicit axis 
range.
Device events sent through XTest don't need this flag, they are expected to 
be
in the valuator range of the device anyway.

Red Hat Bug 490984 https://bugzilla.redhat.com/show_bug.cgi?id=490984

Signed-off-by: Peter Hutterer peter.hutte...@who-t.net
(cherry picked from commit 603db34337a61754e0c5f71525011d10eab78411)

diff --git a/Xext/xtest.c b/Xext/xtest.c
index a7f3830..3ff02ed 100644
--- a/Xext/xtest.c
+++ b/Xext/xtest.c
@@ -161,6 +161,7 @@ ProcXTestFakeInput(client)
 int nevents;
 int i;
 int base = 0;
+int flags = 0;
 
 nev = (stuff-length  2) - sizeof(xReq);
 if ((nev % sizeof(xEvent)) || !nev)
@@ -211,8 +212,14 @@ ProcXTestFakeInput(client)
 client-errorValue = ev-u.u.type;
 return BadValue;
 }
+
+if (ev-u.u.detail == xFalse)
+flags |= POINTER_ABSOLUTE;
 } else
+{
 firstValuator = 0;
+flags |= POINTER_ABSOLUTE;
+}
 
 if (nev == 1  type == XI_DeviceMotionNotify  !dev-valuator)
 {
@@ -281,6 +288,8 @@ ProcXTestFakeInput(client)
 valuators[1] = ev-u.keyButtonPointer.rootY;
 numValuators = 2;
 firstValuator = 0;
+if (ev-u.u.detail == xFalse)
+flags = POINTER_ABSOLUTE | POINTER_SCREEN;
 break;
 default:
 client-errorValue = ev-u.u.type;
@@ -378,14 +387,13 @@ ProcXTestFakeInput(client)
 GetEventList(events);
 switch(type) {
 case MotionNotify:
-nevents = GetPointerEvents(events, dev, type, 0,
-(ev-u.u.detail == xFalse) ?  POINTER_ABSOLUTE : 0,
+nevents = GetPointerEvents(events, dev, type, 0, flags,
 firstValuator, numValuators, valuators);
 break;
 case ButtonPress:
 case ButtonRelease:
 nevents = GetPointerEvents(events, dev, type, ev-u.u.detail,
-   POINTER_ABSOLUTE, firstValuator,
+   flags, firstValuator,
numValuators, valuators);
 break;
 case KeyPress:

commit 6ff60c626141771b365d557fe64bc93f200d1c9c
Author: Kristian Høgsberg k...@redhat.com
Date:   Thu Apr 9 13:16:37 2009 -0400

glx: Fix drawable private leak on destroy

When a drawable goes away, we don't destroy the GLX drawable in full,
since it may be current for a context.  This means that when the drawable
is destroyed in full later, the backend doesn't get a chance to
destroy resources associated with the drawable (the DRI2Drawable).

With this patch, we destroy the GLX drawable in full when it goes away
and 

xorg-server: Changes to 'upstream-unstable'

2009-04-08 Thread Julien Cristau
Rebased ref, commits from common ancestor:
commit 60c161545af80eb78eb790a05bde79409dfdf16e
Author: Keith Packard kei...@keithp.com
Date:   Wed Feb 25 12:05:44 2009 -0800

X server version 1.6.0

Signed-off-by: Keith Packard kei...@keithp.com

diff --git a/configure.ac b/configure.ac
index b4d18dd..f2718b8 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,12 +26,12 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.57)
-AC_INIT([xorg-server], 1.5.99.903, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+AC_INIT([xorg-server], 1.6.0, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([dist-bzip2 foreign])
 AM_MAINTAINER_MODE
 
-RELEASE_DATE=2009-2-17
+RELEASE_DATE=2009-2-25
 
 dnl this gets generated by autoheader, and thus contains all the defines.  we
 dnl don't ever actually use it, internally.

commit e9a9f807971b8fb62b957c9d54b4aea7fb0f96ca
Author: Maarten Maathuis madman2...@gmail.com
Date:   Fri Jan 30 19:32:33 2009 +0100

exa: kill of exaImageGlyphBlt

- It serves no obvious purpose, yet it directly accesses many fb
symbols.
(cherry picked from commit 5cc67ae94c066dcac78072ad8a819c3b602d8bab)

diff --git a/exa/exa_accel.c b/exa/exa_accel.c
index f72a08a..453431e 100644
--- a/exa/exa_accel.c
+++ b/exa/exa_accel.c
@@ -856,139 +856,6 @@ out:
 REGION_DESTROY(pScreen, pReg);
 }
 
-static void
-exaImageGlyphBlt (DrawablePtr  pDrawable,
- GCPtr pGC,
- int   x,
- int   y,
- unsigned int  nglyph,
- CharInfoPtr   *ppciInit,
- pointer   pglyphBase)
-{
-FbGCPrivPtrpPriv = fbGetGCPrivate(pGC);
-CharInfoPtr*ppci;
-CharInfoPtrpci;
-unsigned char   *pglyph;   /* pointer bits in glyph */
-intgWidth, gHeight;/* width and height of glyph */
-FbStride   gStride;/* stride of glyph */
-Bool   opaque;
-intgx, gy;
-void   (*glyph) (FbBits *,
- FbStride,
- int,
- FbStip *,
- FbBits,
- int,
- int);
-FbBits *dst;
-FbStride   dstStride;
-intdstBpp;
-intdstXoff, dstYoff;
-FbBits depthMask;
-PixmapPtr  pPixmap = exaGetDrawablePixmap(pDrawable);
-ExaPixmapPriv(pPixmap);
-RegionPtr  pending_damage = NULL;
-BoxRec extents;
-intxoff, yoff;
-
-if (pExaPixmap-pDamage)
-   pending_damage = DamagePendingRegion(pExaPixmap-pDamage);
-
-if (pending_damage) {
-   extents = *REGION_EXTENTS(pScreen, pending_damage);
-
-   if (extents.x1 = extents.x2 || extents.y1 = extents.y2)
-   return;
-
-   depthMask = FbFullMask(pDrawable-depth);
-}
-
-if (!pending_damage || (pGC-planemask  depthMask) != depthMask)
-{
-   ExaCheckImageGlyphBlt(pDrawable, pGC, x, y, nglyph, ppciInit, 
pglyphBase);
-   return;
-}
-
-glyph = NULL;
-switch (pDrawable-bitsPerPixel) {
-case 8:glyph = fbGlyph8; break;
-case 16:glyph = fbGlyph16; break;
-case 24:glyph = fbGlyph24; break;
-case 32:glyph = fbGlyph32; break;
-}
-
-x += pDrawable-x;
-y += pDrawable-y;
-
-exaGetDrawableDeltas(pDrawable, pPixmap, xoff, yoff);
-extents.x1 -= xoff;
-extents.x2 -= xoff;
-extents.y1 -= yoff;
-extents.y2 -= yoff;
-
-exaPrepareAccessReg (pDrawable, EXA_PREPARE_DEST, pending_damage);
-
-if (TERMINALFONT (pGC-font)  !glyph)
-{
-   opaque = TRUE;
-}
-else
-{
-   FbBits fg = fbReplicatePixel (pGC-bgPixel, pDrawable-bitsPerPixel);
-
-   fbSolidBoxClipped (pDrawable,
-  fbGetCompositeClip(pGC),
-  extents.x1,
-  extents.y1,
-  extents.x2,
-  extents.y2,
-  fbAnd (GXcopy, fg, pGC-planemask),
-  fbXor (GXcopy, fg, pGC-planemask));
-
-   opaque = FALSE;
-}
-
-EXA_FALLBACK((to %p (%c)\n, pDrawable, exaDrawableLocation(pDrawable)));
-
-exaPrepareAccessGC (pGC);
-
-fbGetDrawable (pDrawable, dst, dstStride, dstBpp, dstXoff, dstYoff);
-
-for (ppci = ppciInit; nglyph; nglyph--, x += pci-metrics.characterWidth)
-{
-   pci = *ppci++;
-   gWidth = GLYPHWIDTHPIXELS(pci);
-   gHeight = GLYPHHEIGHTPIXELS(pci);
-   gx = x + pci-metrics.leftSideBearing;
-   gy = y - pci-metrics.ascent;
-
-   if (!gWidth || !gHeight || (gx + gWidth) = extents.x1 ||
-   (gy + gHeight) = extents.y1 || gx = 

xorg-server: Changes to 'upstream-unstable'

2008-06-11 Thread Julien Cristau
 Xext/security.c |   10 +++---
 Xext/shm.c  |   13 +++--
 Xi/exevents.c   |   11 ---
 configure.ac|4 ++--
 dix/getevents.c |2 +-
 record/record.c |   16 +---
 render/glyph.c  |   14 --
 render/render.c |   18 ++
 8 files changed, 68 insertions(+), 20 deletions(-)

New commits:
commit c3a7903f6a6a27e53ba0372408e0c5a68c608e86
Author: Julien Cristau [EMAIL PROTECTED]
Date:   Wed Jun 11 16:27:10 2008 +0200

Bump to 1.4.2

And update release date.

diff --git a/configure.ac b/configure.ac
index c64117f..f75fc61 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,7 +26,7 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.57)
-AC_INIT([xorg-server], 1.4.1, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+AC_INIT([xorg-server], 1.4.2, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([dist-bzip2 foreign])
 AM_MAINTAINER_MODE
@@ -392,7 +392,7 @@ VENDOR_MAN_VERSION=Version ${PACKAGE_VERSION}
 
 VENDOR_NAME=The X.Org Foundation
 VENDOR_NAME_SHORT=X.Org
-RELEASE_DATE=5 September 2007
+RELEASE_DATE=11 June 2008
 VENDOR_WEB=http://wiki.x.org;
 
 m4_ifdef([AS_HELP_STRING], , [m4_define([AS_HELP_STRING], 
m4_defn([AC_HELP_STRING]))])

commit 08e6292e7efff518730e3c54f3a082c6139d618d
Author: Matthieu Herrb [EMAIL PROTECTED]
Date:   Sun Jun 8 11:16:23 2008 -0600

CVE-2008-1379 - MIT-SHM arbitrary memory read

An integer overflow in the validation of the parameters of the
ShmPutImage() request makes it possible to trigger the copy of
arbitrary server memory to a pixmap that can subsequently be read by
the client, to read arbitrary parts of the X server memory space.

diff --git a/Xext/shm.c b/Xext/shm.c
index 3c0d1ee..de908cf 100644
--- a/Xext/shm.c
+++ b/Xext/shm.c
@@ -848,8 +848,17 @@ ProcShmPutImage(client)
 return BadValue;
 }
 
-VERIFY_SHMSIZE(shmdesc, stuff-offset, length * stuff-totalHeight,
-  client);
+/* 
+ * There's a potential integer overflow in this check:
+ * VERIFY_SHMSIZE(shmdesc, stuff-offset, length * stuff-totalHeight,
+ *client);
+ * the version below ought to avoid it
+ */
+if (stuff-totalHeight != 0  
+   length  (shmdesc-size - stuff-offset)/stuff-totalHeight) {
+   client-errorValue = stuff-totalWidth;
+   return BadValue;
+}
 if (stuff-srcX  stuff-totalWidth)
 {
client-errorValue = stuff-srcX;

commit 8ffaf613705a915c4b53ae11096dacd786fd1d22
Author: Matthieu Herrb [EMAIL PROTECTED]
Date:   Sun Jun 8 11:16:55 2008 -0600

CVE-2008-1377 - RECORD and Security extensions memory corruption

Lack of validation of the parameters of the
SProcSecurityGenerateAuthorization SProcRecordCreateContext
functions makes it possible for a specially crafted request to trigger
the swapping of bytes outside the parameter of these requests, causing
memory corruption.

diff --git a/Xext/security.c b/Xext/security.c
index 14ad354..a8a75ea 100644
--- a/Xext/security.c
+++ b/Xext/security.c
@@ -651,15 +651,19 @@ SProcSecurityGenerateAuthorization(
 register char  n;
 CARD32 *values;
 unsigned long nvalues;
+int values_offset;
 
 swaps(stuff-length, n);
 REQUEST_AT_LEAST_SIZE(xSecurityGenerateAuthorizationReq);
 swaps(stuff-nbytesAuthProto, n);
 swaps(stuff-nbytesAuthData, n);
 swapl(stuff-valueMask, n);
-values = (CARD32 *)(stuff[1]) +
-   ((stuff-nbytesAuthProto + (unsigned)3)  2) +
-   ((stuff-nbytesAuthData + (unsigned)3)  2);
+values_offset = ((stuff-nbytesAuthProto + (unsigned)3)  2) +
+   ((stuff-nbytesAuthData + (unsigned)3)  2);
+if (values_offset  
+   stuff-length - (sz_xSecurityGenerateAuthorizationReq  2))
+   return BadLength;
+values = (CARD32 *)(stuff[1]) + values_offset;
 nvalues = (((CARD32 *)stuff) + stuff-length) - values;
 SwapLongs(values, nvalues);
 return ProcSecurityGenerateAuthorization(client);
diff --git a/record/record.c b/record/record.c
index 0ed8f84..9a166d6 100644
--- a/record/record.c
+++ b/record/record.c
@@ -2656,7 +2656,7 @@ SProcRecordQueryVersion(ClientPtr client)
 } /* SProcRecordQueryVersion */
 
 
-static void
+static int
 SwapCreateRegister(xRecordRegisterClientsReq *stuff)
 {
 register char n;
@@ -2667,11 +2667,17 @@ SwapCreateRegister(xRecordRegisterClientsReq *stuff)
 swapl(stuff-nClients, n);
 swapl(stuff-nRanges, n);
 pClientID = (XID *)stuff[1];
+if (stuff-nClients  stuff-length - (sz_xRecordRegisterClientsReq  2))
+   return BadLength;
 for (i = 0; i  stuff-nClients; i++, pClientID++)
 {
swapl(pClientID, n);
 }
+if (stuff-nRanges  stuff-length - (sz_xRecordRegisterClientsReq  2)
+   - stuff-nClients)
+   return BadLength;
 

xorg-server: Changes to 'upstream-unstable'

2008-05-17 Thread Julien Cristau
 Xext/dpms.c|7 +--
 composite/compwindow.c |4 ++--
 config/hal.c   |8 +---
 configure.ac   |2 +-
 exa/exa.c  |2 +-
 exa/exa_render.c   |1 +
 hw/dmx/Makefile.am |1 +
 hw/dmx/dmxinput.c  |   11 +++
 hw/kdrive/ephyr/Makefile.am|1 +
 hw/kdrive/src/kdrive.c |6 --
 hw/xfree86/common/xf86AutoConfig.c |9 +++--
 hw/xfree86/common/xf86Priv.h   |2 +-
 hw/xfree86/modes/xf86Cursors.c |3 ++-
 hw/xprint/Makefile.am  |2 +-
 hw/xprint/ddxInit.c|   11 +++
 xkb/ddxLoad.c  |2 +-
 xkb/xkbUtils.c |   23 +++
 17 files changed, 66 insertions(+), 29 deletions(-)

New commits:
commit ddcca23a81abf5215f906a7ad097f1ed088ed92b
Author: Peter Hutterer [EMAIL PROTECTED]
Date:   Thu Feb 7 15:48:04 2008 +1030

xkb: when copying the keymap, make sure the structs default to 0/NULL.

It actually does help if a pointer is NULL rather than pointing to nirvana
when you're trying to free it lateron. Who would have thought?
(cherry picked from commit 7a97ca667405a42d008265c3a870210cc1da97dd)
(cherry picked from commit 0b0a09797302ac2171db5df20fc5110aafc8efbb)

diff --git a/xkb/xkbUtils.c b/xkb/xkbUtils.c
index e90df0d..ce4df4c 100644
--- a/xkb/xkbUtils.c
+++ b/xkb/xkbUtils.c
@@ -1707,9 +1707,8 @@ XkbCopyKeymap(XkbDescPtr src, XkbDescPtr dst, Bool 
sendNotifies)
 else {
 if (dst-geom-sz_shapes) {
 xfree(dst-geom-shapes);
-dst-geom-shapes = NULL;
 }
-
+dst-geom-shapes = NULL;
 dst-geom-num_shapes = 0;
 dst-geom-sz_shapes = 0;
 }
@@ -1758,6 +1757,7 @@ XkbCopyKeymap(XkbDescPtr src, XkbDescPtr dst, Bool 
sendNotifies)
 }
 
 dst-geom-num_sections = 0;
+dst-geom-sections = NULL;
 }
 
 if (src-geom-num_sections) {
@@ -1769,6 +1769,7 @@ XkbCopyKeymap(XkbDescPtr src, XkbDescPtr dst, Bool 
sendNotifies)
 tmp = xalloc(src-geom-num_sections * sizeof(XkbSectionRec));
 if (!tmp)
 return FALSE;
+memset(tmp, 0, src-geom-num_sections * sizeof(XkbSectionRec));
 dst-geom-sections = tmp;
 dst-geom-num_sections = src-geom-num_sections;
 
@@ -1804,6 +1805,10 @@ XkbCopyKeymap(XkbDescPtr src, XkbDescPtr dst, Bool 
sendNotifies)
 return FALSE;
 dsection-doodads = tmp;
 }
+else {
+dsection-doodads = NULL;
+}
+
 for (k = 0,
   sdoodad = ssection-doodads,
   ddoodad = dsection-doodads;
@@ -1831,9 +1836,9 @@ XkbCopyKeymap(XkbDescPtr src, XkbDescPtr dst, Bool 
sendNotifies)
 else {
 if (dst-geom-sz_sections) {
 xfree(dst-geom-sections);
-dst-geom-sections = NULL;
 }
 
+dst-geom-sections = NULL;
 dst-geom-num_sections = 0;
 dst-geom-sz_sections = 0;
 }
@@ -1862,6 +1867,8 @@ XkbCopyKeymap(XkbDescPtr src, XkbDescPtr dst, Bool 
sendNotifies)
 }
 }
 }
+dst-geom-num_doodads = 0;
+dst-geom-doodads = NULL;
 }
 
 if (src-geom-num_doodads) {
@@ -1874,7 +1881,7 @@ XkbCopyKeymap(XkbDescPtr src, XkbDescPtr dst, Bool 
sendNotifies)
   sizeof(XkbDoodadRec));
 if (!tmp)
 return FALSE;
-bzero(tmp, src-geom-num_doodads * sizeof(XkbDoodadRec));
+memset(tmp, 0, src-geom-num_doodads * sizeof(XkbDoodadRec));
 dst-geom-doodads = tmp;
 
 dst-geom-sz_doodads = src-geom-num_doodads;
@@ -1903,9 +1910,9 @@ XkbCopyKeymap(XkbDescPtr src, XkbDescPtr dst, Bool 
sendNotifies)
 else {
 if (dst-geom-sz_doodads) {
 xfree(dst-geom-doodads);
-dst-geom-doodads = NULL;
 }
 
+dst-geom-doodads = NULL;
 dst-geom-num_doodads = 0;
 dst-geom-sz_doodads = 0;
 }
@@ -1933,10 +1940,10 @@ XkbCopyKeymap(XkbDescPtr src, XkbDescPtr dst, Bool 
sendNotifies)
 dst-geom-num_key_aliases = dst-geom-sz_key_aliases;
 }
 else {
-if (dst-geom-sz_key_aliases  dst-geom-key_aliases) {
+if (dst-geom-key_aliases) {
 xfree(dst-geom-key_aliases);
-dst-geom-key_aliases = NULL;
 }
+dst-geom-key_aliases = NULL;
 dst-geom-num_key_aliases = 0;
 dst-geom-sz_key_aliases = 0;
 }
@@ -1967,8 +1974,8 @@ XkbCopyKeymap(XkbDescPtr src, 

xorg-server: Changes to 'upstream-unstable'

2008-05-07 Thread Julien Cristau
 Xext/shm.c |2 
 Xext/xf86bigfont.c |2 
 configure.ac   |   17 ++-
 dix/getevents.c|  161 -
 exa/exa_accel.c|2 
 hw/xfree86/common/xf86Xinput.c |2 
 hw/xfree86/loader/os.c |2 
 hw/xfree86/os-support/bus/Pci.h|2 
 hw/xfree86/os-support/bus/freebsdPci.c |2 
 include/xkbsrv.h   |   16 ++-
 os/utils.c |   28 +
 xkb/ddxLoad.c  |   69 ++
 xkb/xkbActions.c   |9 -
 13 files changed, 217 insertions(+), 97 deletions(-)

New commits:
commit 104048501f37b139d4113562ef1711978cc76018
Author: Daniel Stone [EMAIL PROTECTED]
Date:   Wed May 7 23:11:31 2008 +0300

XKB: Actually explain keymap failures

When something went wrong building a keymap, try to explain to the user
what it actually was, instead of the dreaded 'Failed to load XKB keymap'
catch-all.
(cherry picked from commit cf20df39cc78203d17b99223908af388ecbf7d0e)

Conflicts:
xkb/ddxLoad.c

diff --git a/xkb/ddxLoad.c b/xkb/ddxLoad.c
index d79ae7a..ea9c3ff 100644
--- a/xkb/ddxLoad.c
+++ b/xkb/ddxLoad.c
@@ -385,24 +385,20 @@ char tmpname[PATH_MAX];
 xfree (buf);
return True;
}
-#ifdef DEBUG
else
-   ErrorF(Error compiling keymap (%s)\n,keymap);
-#endif
+   LogMessage(X_ERROR, Error compiling keymap (%s)\n, keymap);
 #ifdef WIN32
 /* remove the temporary file */
 unlink(tmpname);
 #endif
 }
-#ifdef DEBUG
 else {
 #ifndef WIN32
-   ErrorF(Could not invoke keymap compiler\n);
+   LogMessage(X_ERROR, XKB: Could not invoke xkbcomp\n);
 #else
-   ErrorF(Could not open file %s\n, tmpname);
+   LogMessage(X_ERROR, Could not open file %s\n, tmpname);
 #endif
 }
-#endif
 if (nameRtrn)
nameRtrn[0]= '\0';
 if (buf != NULL)
@@ -477,17 +473,14 @@ unsigned  missing;
return 0;
}
else if (!XkbDDXCompileNamedKeymap(xkb,names,nameRtrn,nameRtrnLen)) {
-#ifdef NOISY
-   ErrorF(Couldn't compile keymap file\n);
-#endif
+LogMessage(X_ERROR, Couldn't compile keymap file %s\n,
+   names-keymap);
return 0;
}
 }
 else if (!XkbDDXCompileKeymapByNames(xkb,names,want,need,
-   nameRtrn,nameRtrnLen)){
-#ifdef NOISY
-   ErrorF(Couldn't compile keymap file\n);
-#endif
+ nameRtrn,nameRtrnLen)){
+   LogMessage(X_ERROR, XKB: Couldn't compile keymap\n);
return 0;
 }
 file= XkbDDXOpenConfigFile(nameRtrn,fileName,PATH_MAX);
@@ -502,11 +495,9 @@ unsigned   missing;
(void) unlink (fileName);
return 0;
 }
-#ifdef DEBUG
-else if (xkbDebugFlags) {
-   ErrorF(Loaded %s, defined=0x%x\n,fileName,finfoRtrn-defined);
+else {
+   DebugF(XKB: Loaded %s, defined=0x%x\n,fileName,finfoRtrn-defined);
 }
-#endif
 fclose(file);
 (void) unlink (fileName);
 return (need|want)(~missing);
@@ -525,32 +516,40 @@ XkbRF_RulesPtrrules;
 
 if (!rules_name)
return False;
-if (XkbBaseDirectory==NULL) {
-   if (strlen(rules_name)+7  PATH_MAX)
-   return False;
-   sprintf(buf,rules/%s,rules_name);
-}
-else {
-   if (strlen(XkbBaseDirectory)+strlen(rules_name)+8  PATH_MAX)
-   return False;
-sprintf(buf,%s/rules/%s,XkbBaseDirectory,rules_name);
+
+if (strlen(XkbBaseDirectory) + strlen(rules_name) + 8  PATH_MAX) {
+LogMessage(X_ERROR, XKB: Rules name is too long\n);
+return False;
 }
-if ((file= fopen(buf,r))==NULL)
+sprintf(buf,%s/rules/%s, XkbBaseDirectory, rules_name);
+
+file = fopen(buf, r);
+if (!file) {
+LogMessage(X_ERROR, XKB: Couldn't open rules file %s\n, file);
return False;
-if ((rules= XkbRF_Create(0,0))==NULL) {
+}
+
+rules = XkbRF_Create(0, 0);
+if (!rules) {
+LogMessage(X_ERROR, XKB: Couldn't create rules struct\n);
fclose(file);
return False;
 }
-if (!XkbRF_LoadRules(file,rules)) {
+
+if (!XkbRF_LoadRules(file, rules)) {
+LogMessage(X_ERROR, XKB: Couldn't parse rules file %s\n, rules_name);
fclose(file);
XkbRF_Free(rules,True);
return False;
 }
-bzero((char *)names,sizeof(XkbComponentNamesRec));
-complete= XkbRF_GetComponents(rules,defs,names);
+
+memset(names, 0, sizeof(*names));
+complete = XkbRF_GetComponents(rules,defs,names);
 fclose(file);
-XkbRF_Free(rules,True);
-return complete;
-}
+XkbRF_Free(rules, True);
 
+if (!complete)
+LogMessage(X_ERROR, XKB: Rules returned no components\n);
 
+return complete;
+}

commit 

xorg-server: Changes to 'upstream-unstable'

2008-03-14 Thread Julien Cristau
 GL/glx/glxdri.c   |8 
 Xext/security.c   |2 +-
 Xext/shm.c|   12 ++--
 composite/compwindow.c|   25 +
 dix/window.c  |3 ++-
 hw/xfree86/modes/xf86Rotate.c |4 ++--
 6 files changed, 44 insertions(+), 10 deletions(-)

New commits:
commit a65d4aed06acd839fb21153f74144498abda3e18
Author: Alan Hourihane [EMAIL PROTECTED]
Date:   Wed Feb 27 16:49:34 2008 +

Fix context sharing between direct/indirect contexts

diff --git a/GL/glx/glxdri.c b/GL/glx/glxdri.c
index 685683d..09abca3 100644
--- a/GL/glx/glxdri.c
+++ b/GL/glx/glxdri.c
@@ -598,6 +598,9 @@ __glXDRIscreenCreateContext(__GLXscreen *baseScreen,
 else
sharePrivate = NULL;
 
+if (baseShareContext  baseShareContext-isDirect)
+return NULL;
+
 context = xalloc(sizeof *context);
 if (context == NULL)
return NULL;
@@ -617,6 +620,11 @@ __glXDRIscreenCreateContext(__GLXscreen *baseScreen,
   0, /* render type */
   sharePrivate,
   context-driContext);
+
+if (!context-driContext.private) {
+   xfree(context);
+   return NULL;
+}
 
 context-driContext.mode = modes;
 

commit 44f46bfb981ca69515dafc520f62f33654711194
Author: Matthias Hopf [EMAIL PROTECTED]
Date:   Mon Jan 21 16:13:21 2008 +0100

CVE-2007-6429: Always test for size+offset wrapping.

diff --git a/Xext/shm.c b/Xext/shm.c
index 6f99e90..376f123 100644
--- a/Xext/shm.c
+++ b/Xext/shm.c
@@ -753,10 +753,10 @@ CreatePmap:
 if (sizeof(size) == 4  BitsPerPixel(depth)  8) {
 if (size  width * height)
 return BadAlloc;
-/* thankfully, offset is unsigned */
-if (stuff-offset + size  size)
-return BadAlloc;
 }
+/* thankfully, offset is unsigned */
+if (stuff-offset + size  size)
+   return BadAlloc;
 
 VERIFY_SHMSIZE(shmdesc, stuff-offset, size, client);
 
@@ -1098,10 +1098,10 @@ CreatePmap:
 if (sizeof(size) == 4  BitsPerPixel(depth)  8) {
if (size  width * height)
return BadAlloc;
-   /* thankfully, offset is unsigned */
-   if (stuff-offset + size  size)
-   return BadAlloc;
 }
+/* thankfully, offset is unsigned */
+if (stuff-offset + size  size)
+   return BadAlloc;
 
 VERIFY_SHMSIZE(shmdesc, stuff-offset, size, client);
 pMap = (*shmFuncs[pDraw-pScreen-myNum]-CreatePixmap)(

commit bcbfd619f8da888224afd80ee3a2db7d500523eb
Author: Kristian Høgsberg [EMAIL PROTECTED]
Date:   Wed Jan 16 20:24:11 2008 -0500

Don't break grab and focus state for a window when redirecting it.

Composite uses an unmap/map cycle to trigger backing pixmap allocation
and cliprect recomputation when a window is redirected or unredirected.
To avoid protocol visible side effects, map and unmap events are
disabled temporarily.  However, when a window is unmapped it is also
removed from grabs and loses focus, but these state changes are not
disabled.

This change supresses the unmap side effects during the composite
unmap/map cycle and fixes this bug:

  http://bugzilla.gnome.org/show_bug.cgi?id=488264

where compiz would cause gnome-screensaver to lose its grab when
compiz unredirects the fullscreen lock window.

diff --git a/dix/window.c b/dix/window.c
index be4ea2c..961c02a 100644
--- a/dix/window.c
+++ b/dix/window.c
@@ -3023,7 +3023,8 @@ UnrealizeTree(
} 
 #endif
(* Unrealize)(pChild);
-   DeleteWindowFromAnyEvents(pChild, FALSE);
+   if (MapUnmapEventsEnabled(pWin))
+   DeleteWindowFromAnyEvents(pChild, FALSE);
if (pChild-viewable)
{
 #ifdef DO_SAVE_UNDERS

commit dc30ade6496c7cc24e38c419e229159525fe042f
Author: Maarten Maathuis [EMAIL PROTECTED]
Date:   Sun Feb 17 18:47:28 2008 +0100

Fix rotation for multi-monitor situation.

- The (x,y)-coordinates of the crtc were not being passed as xFixed values, 
which made it an obscure bug to find.
- Fix bug #13787.
(cherry picked from commit a48cc88ea2674c28b69b8d738b168cbafcf4001f)

diff --git a/hw/xfree86/modes/xf86Rotate.c b/hw/xfree86/modes/xf86Rotate.c
index 380478f..dd0e659 100644
--- a/hw/xfree86/modes/xf86Rotate.c
+++ b/hw/xfree86/modes/xf86Rotate.c
@@ -579,9 +579,9 @@ xf86CrtcRotate (xf86CrtcPtr crtc, DisplayModePtr mode, 
Rotation rotation)
 }
 else
 {
-   PictureTransformTranslate (crtc_to_fb, fb_to_crtc, crtc-x, crtc-y);
+   PictureTransformTranslate (crtc_to_fb, fb_to_crtc, F(crtc-x), 
F(crtc-y));
PictureTransformIsInverse (offset, crtc_to_fb, fb_to_crtc);
-   
+
/* 
 * these are the size of the shadow pixmap, which
 * matches the mode, not the pre-rotated copy in the

commit 3db5930c61aeb849de3b21e7ba0d86d3c0cf72bb

xorg-server: Changes to 'upstream-unstable'

2008-01-31 Thread David Nusinow
 dix/getevents.c |2 +-
 xkb/xkbLEDs.c   |3 +++
 2 files changed, 4 insertions(+), 1 deletion(-)

New commits:
commit bc72ef3a159efd67067322c043bba444869dc356
Author: Peter Hutterer [EMAIL PROTECTED]
Date:   Wed Jan 30 10:39:54 2008 +1030

xkb: don't update LEDs if they don't exist. (Bug #13961)

In some weird cases we call this function when there is no SrvLedInfo on the
device. And it turns out null-pointer dereferences are bad.

X.Org Bug 13961 http://bugs.freedesktop.org/show_bug.cgi?id=13961
(cherry picked from commit d954f9c80348de294602d931d387e5cd1ef4b9a5)

diff --git a/xkb/xkbLEDs.c b/xkb/xkbLEDs.c
index d607d90..d28973c 100644
--- a/xkb/xkbLEDs.c
+++ b/xkb/xkbLEDs.c
@@ -63,6 +63,9 @@ XkbSrvLedInfoPtr  sli;
 
 sli= XkbFindSrvLedInfo(dev,XkbDfltXIClass,XkbDfltXIId,0);
 
+if (!sli)
+return update;
+
 if (state_changes(XkbModifierStateMask|XkbGroupStateMask))
update|= sli-usesEffective;
 if (state_changes(XkbModifierBaseMask|XkbGroupBaseMask))

commit e98027c3ac7195fec665ef393d980b02870ca1b8
Author: Peter Hutterer [EMAIL PROTECTED]
Date:   Tue Dec 18 13:57:07 2007 +1030

dix: set the correct number of valuators in valuator events.

(first_valuator + num_valuators) must never be larger than the number of 
axes,
otherwise DIX freaks out. And from looking at libXI, anything larger than 6 
is
wrong too.
(cherry picked from commit 9f6ae61ad12cc2813d04405458e1ca5aed8a539e)

diff --git a/dix/getevents.c b/dix/getevents.c
index 12d8189..b7ba69b 100644
--- a/dix/getevents.c
+++ b/dix/getevents.c
@@ -344,7 +344,7 @@ getValuatorEvents(xEvent *events, DeviceIntPtr pDev, int 
first_valuator,
 for (i = first_valuator; i  final_valuator; i += 6, xv++, events++) {
 xv-type = DeviceValuator;
 xv-first_valuator = i;
-xv-num_valuators = num_valuators;
+xv-num_valuators = ((num_valuators - i)  6) ? 6 : (num_valuators - 
i);
 xv-deviceid = pDev-id;
 switch (final_valuator - i) {
 case 6:


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



xorg-server: Changes to 'upstream-unstable'

2008-01-18 Thread Julien Cristau
 Xext/EVI.c  |   15 +++-
 Xext/cup.c  |3 ++
 Xext/sampleEVI.c|   29 +++
 Xext/security.c |4 +--
 Xext/shm.c  |   50 +---
 Xi/chgfctl.c|7 -
 Xi/chgkmap.c|   13 --
 Xi/chgprop.c|   10 ++--
 Xi/grabdev.c|   12 -
 Xi/grabdevb.c   |   10 ++--
 Xi/grabdevk.c   |9 +--
 Xi/selectev.c   |   11 +++-
 Xi/sendexev.c   |   14 ++-
 dix/dixfonts.c  |7 +
 hw/kdrive/ephyr/ephyr.c |1 
 hw/xfree86/common/xf86MiscExt.c |4 +++
 os/io.c |2 -
 xkb/xkbUtils.c  |1 
 18 files changed, 131 insertions(+), 71 deletions(-)

New commits:
commit b6d4cdf64f43ae805beada6122c8be2ed138742c
Author: Adam Jackson [EMAIL PROTECTED]
Date:   Fri Jan 18 14:41:20 2008 -0500

CVE-2007-6429: Don't spuriously reject 8bpp shm pixmaps.

Move size validation after depth validation, and only validate size if
the bpp of the pixmap format is  8.  If bpp  8 then we're already
protected from overflow by the width and height checks.
(cherry picked from commit e9fa7c1c88a8130a48f772c92b186b8b777986b5)

diff --git a/Xext/shm.c b/Xext/shm.c
index 5633be9..6f99e90 100644
--- a/Xext/shm.c
+++ b/Xext/shm.c
@@ -737,14 +737,6 @@ ProcPanoramiXShmCreatePixmap(
 }
 if (width  32767 || height  32767)
 return BadAlloc;
-size = PixmapBytePad(width, depth) * height;
-if (sizeof(size) == 4) {
-if (size  width * height)
-return BadAlloc;
-/* thankfully, offset is unsigned */
-if (stuff-offset + size  size)
-return BadAlloc;
-}
 
 if (stuff-depth != 1)
 {
@@ -755,7 +747,17 @@ ProcPanoramiXShmCreatePixmap(
client-errorValue = stuff-depth;
 return BadValue;
 }
+
 CreatePmap:
+size = PixmapBytePad(width, depth) * height;
+if (sizeof(size) == 4  BitsPerPixel(depth)  8) {
+if (size  width * height)
+return BadAlloc;
+/* thankfully, offset is unsigned */
+if (stuff-offset + size  size)
+return BadAlloc;
+}
+
 VERIFY_SHMSIZE(shmdesc, stuff-offset, size, client);
 
 if(!(newPix = (PanoramiXRes *) xalloc(sizeof(PanoramiXRes
@@ -1080,14 +1082,6 @@ ProcShmCreatePixmap(client)
 }
 if (width  32767 || height  32767)
return BadAlloc;
-size = PixmapBytePad(width, depth) * height;
-if (sizeof(size) == 4) {
-   if (size  width * height)
-   return BadAlloc;
-   /* thankfully, offset is unsigned */
-   if (stuff-offset + size  size)
-   return BadAlloc;
-}
 
 if (stuff-depth != 1)
 {
@@ -1098,7 +1092,17 @@ ProcShmCreatePixmap(client)
client-errorValue = stuff-depth;
 return BadValue;
 }
+
 CreatePmap:
+size = PixmapBytePad(width, depth) * height;
+if (sizeof(size) == 4  BitsPerPixel(depth)  8) {
+   if (size  width * height)
+   return BadAlloc;
+   /* thankfully, offset is unsigned */
+   if (stuff-offset + size  size)
+   return BadAlloc;
+}
+
 VERIFY_SHMSIZE(shmdesc, stuff-offset, size, client);
 pMap = (*shmFuncs[pDraw-pScreen-myNum]-CreatePixmap)(
pDraw-pScreen, stuff-width,

commit 19b95cdd1d14a1e7d1abba1880ab023c96f19bf5
Author: Matthieu Herrb [EMAIL PROTECTED]
Date:   Thu Jan 17 17:03:39 2008 +0100

Fix for CVE-2007-5958 - File existence disclosure.

diff --git a/Xext/security.c b/Xext/security.c
index ba057de..e9d48c9 100644
--- a/Xext/security.c
+++ b/Xext/security.c
@@ -1563,7 +1563,7 @@ SecurityLoadPropertyAccessList(void)
 if (!SecurityPolicyFile)
return;
 
-f = fopen(SecurityPolicyFile, r);
+f = Fopen(SecurityPolicyFile, r);
 if (!f)
 {
ErrorF(error opening security policy file %s\n,
@@ -1646,7 +1646,7 @@ SecurityLoadPropertyAccessList(void)
 }
 #endif /* PROPDEBUG */
 
-fclose(f);
+Fclose(f);
 } /* SecurityLoadPropertyAccessList */
 
 

commit f09b8007e7f6e60e0b9c9665ec632b578ae08b6f
Author: Matthieu Herrb [EMAIL PROTECTED]
Date:   Thu Jan 17 15:29:06 2008 +0100

Fix for CVE-2008-0006 - PCF Font parser buffer overflow.

diff --git a/dix/dixfonts.c b/dix/dixfonts.c
index c21b3ec..7bb2404 100644
--- a/dix/dixfonts.c
+++ b/dix/dixfonts.c
@@ -325,6 +325,13 @@ doOpenFont(ClientPtr client, OFclosurePtr c)
err = BadFontName;
goto bail;
 }
+/* check values for firstCol, lastCol, firstRow, and lastRow */
+if (pfont-info.firstCol  pfont-info.lastCol ||
+   pfont-info.firstRow  pfont-info.lastRow ||
+   pfont-info.lastCol - pfont-info.firstCol  255) {
+   err = AllocError;
+   goto bail;
+}
 

xorg-server: Changes to 'upstream-unstable'

2008-01-05 Thread David Nusinow
New branch 'upstream-unstable' available with the following commits:


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



xorg-server: Changes to 'upstream-unstable'

2008-01-05 Thread David Nusinow
 .gitignore   |1 
 ChangeLog|28152 +++
 GL/Makefile.in   |  681 
 GL/apple/Makefile.in |  683 
 GL/glx/Makefile.in   |  746 
 GL/glx/glxutil.h |2 
 GL/mesa/Makefile.in  |  749 
 GL/mesa/X/Makefile.in|  667 
 GL/mesa/glapi/Makefile.in|  638 
 GL/mesa/main/Makefile.in |  776 
 GL/mesa/math/Makefile.in |  654 
 GL/mesa/shader/Makefile.in   |  788 
 GL/mesa/shader/grammar/Makefile.in   |  637 
 GL/mesa/shader/slang/Makefile.in |  686 
 GL/mesa/swrast/Makefile.in   |  702 
 GL/mesa/swrast_setup/Makefile.in |  638 
 GL/mesa/tnl/Makefile.in  |  675 
 GL/mesa/vbo/Makefile.in  |  670 
 Makefile.in  |  934 
 XTrap/Makefile.in|  625 
 Xext/Makefile.in |  905 
 Xi/Makefile.in   |  739 
 aclocal.m4   | 8266 ++
 afb/Makefile.in  |  741 
 cfb/Makefile.in  | 1055 
 cfb32/Makefile.in| 1008 
 compile  |  142 
 composite/Makefile.in|  631 
 config.guess | 1516 
 config.sub   | 1626 
 config/Makefile.in   |  667 
 configure|39803 
++
 damageext/Makefile.in|  625 
 dbe/Makefile.in  |  661 
 debian/README.printing-problems  |  162 
 debian/changelog | 1185 
 debian/compat|1 
 debian/control   |  260 
 debian/copyright | 1108 
 debian/inputabiver   |1 
 debian/local/xvfb-run|  183 
 debian/local/xvfb-run.1  |  282 
 debian/patches/001_ubuntu_add_extra_modelines_from_xorg.patch|   63 
 debian/patches/02_libvgahw_gcc4_volatile_fix.diff|   70 
 debian/patches/03_auto_load_driver.diff  |  335 
 debian/patches/04_auto_load_driver_no_conf.diff  |   28 
 debian/patches/05_kill_type1.diff|  160 
 debian/patches/06_use_proc_instead_of_sysfs_for_pci_domains.diff |   36 
 debian/patches/07_autoconfig_screen_with_device_section.diff |   27 
 debian/patches/08_xkb_infinite_loop.diff |   34 
 debian/patches/09_debian_xserver_rtff.diff   |   52 
 debian/patches/10_dont_look_in_home_for_config.diff  |   12 
 debian/patches/13_debian_add_xkbpath_env_variable.diff   |   31 
 debian/patches/14_default_screen_section.diff|   61 
 debian/patches/21_glx_align_fixes.patch  |   63 
 debian/patches/41_vbe_filter_less.diff   |   46 
 debian/patches/43_allow_override_BIOS_EDID_preferred_mode.diff   |  131 
 debian/patches/44_preferredmode_infinite_loop.diff   |   31 
 debian/patches/47_fbdevhw_magic_numbers.diff |   17 
 debian/patches/51_xkb-and-loathing.diff  |   46 
 debian/patches/91_ttf2pt1|22165 +
 debian/patches/91_ttf2pt1_updates|   39 
 debian/patches/92_xprint-security-holes-fix.patch|  158 
 debian/patches/93_spooltodir_check_file_exists   |   52 
 debian/patches/93_xprint_fonts_fix   |   12 
 debian/patches/series|   22 
 debian/po/POTFILES.in|1 
 

xorg-server: Changes to 'upstream-unstable'

2007-12-12 Thread David Nusinow
 Xext/panoramiXSwap.c |4 
 Xi/exevents.c|4 ++--
 config/hal.c |5 +++--
 configure.ac |2 +-
 dix/getevents.c  |2 +-
 hw/kdrive/ephyr/ephyrinit.c  |2 ++
 hw/xfree86/dixmods/xkbKillSrv.c  |4 +++-
 hw/xfree86/modes/xf86EdidModes.c |6 ++
 hw/xfree86/xaa/xaaGC.c   |9 +
 hw/xprint/Makefile.am|2 ++
 mi/mieq.c|4 +++-
 os/WaitFor.c |2 +-
 os/connection.c  |   16 +++-
 xkb/ddxKillSrv.c |4 +++-
 xkb/xkbActions.c |   19 +--
 15 files changed, 64 insertions(+), 21 deletions(-)

New commits:
commit d988da6eee8422774dff364050bf431b843a714a
Author: Arkadiusz Miskiewicz [EMAIL PROTECTED]
Date:   Thu Dec 13 00:09:08 2007 +0200

Xprint: Clean up generated files

Remember to clean generated wrapper files.
(cherry picked from commit 977fcdea8198906936a64b8117e6a6d027c617e3)

diff --git a/hw/xprint/Makefile.am b/hw/xprint/Makefile.am
index dc8764a..f834966 100644
--- a/hw/xprint/Makefile.am
+++ b/hw/xprint/Makefile.am
@@ -41,3 +41,5 @@ Xprt_SOURCES =\
 $(top_srcdir)/fb/fbcmap_mi.c
 
 EXTRA_DIST = ValTree.c
+
+CLEANFILES = miinitext-wrapper.c dpmsstubs-wrapper.c

commit 41f735fbe02f59bc7bcca335c6e743c72c2fc44c
Author: Hong Liu [EMAIL PROTECTED]
Date:   Tue Sep 4 08:46:46 2007 +0100

bgPixel (unsigned long) is 64-bit on x86_64, so -1 != 0x

This patch should fix bug 8080.
(cherry picked from commit 9adea807038b64292403ede982075fe1dcfd4c9a)

diff --git a/hw/xfree86/xaa/xaaGC.c b/hw/xfree86/xaa/xaaGC.c
index f3434c9..b3dc83a 100644
--- a/hw/xfree86/xaa/xaaGC.c
+++ b/hw/xfree86/xaa/xaaGC.c
@@ -80,10 +80,11 @@ XAAValidateGC(
 }
 
 if(pGC-depth != 32) {
-   if(pGC-bgPixel == -1) /* -1 is reserved for transparency */
-   pGC-bgPixel = 0x7fff; 
-   if(pGC-fgPixel == -1) /* -1 is reserved for transparency */
-   pGC-fgPixel = 0x7fff; 
+   /* 0x is reserved for transparency */
+   if(pGC-bgPixel == 0x)
+   pGC-bgPixel = 0x7fff;
+   if(pGC-fgPixel == 0x)
+   pGC-fgPixel = 0x7fff;
 }
 
 if((pDraw-type == DRAWABLE_PIXMAP)  !IS_OFFSCREEN_PIXMAP(pDraw)){

commit f4bcb53e86bb103b6bcf8a3a170a36137c34d272
Author: Hong Liu [EMAIL PROTECTED]
Date:   Wed Dec 5 17:48:28 2007 +0100

Bug 13308: Verify and reject obviously broken modes.
(cherry picked from commit c6cfcd408df3e44d0094946c0a7d2fa944b4d2d1)

diff --git a/hw/xfree86/modes/xf86EdidModes.c b/hw/xfree86/modes/xf86EdidModes.c
index 8b5e69d..e2ae665 100644
--- a/hw/xfree86/modes/xf86EdidModes.c
+++ b/hw/xfree86/modes/xf86EdidModes.c
@@ -239,6 +239,12 @@ DDCModeFromDetailedTiming(int scrnIndex, struct 
detailed_timings *timing,
 Mode-VSyncEnd = Mode-VSyncStart + timing-v_sync_width;
 Mode-VTotal = timing-v_active + timing-v_blanking;
 
+/* perform basic check on the detail timing */
+if (Mode-HSyncEnd  Mode-HTotal || Mode-VSyncEnd  Mode-VTotal) {
+   xfree(Mode);
+   return NULL;
+}
+
 xf86SetModeDefaultName(Mode);
 
 /* We ignore h/v_size and h/v_border for now. */

commit d63efecc9471ac53535932b80a85b7f408f06fb9
Author: Daniel Stone [EMAIL PROTECTED]
Date:   Wed Dec 12 21:57:59 2007 +0200

Bump to 1.4.0.90

diff --git a/configure.ac b/configure.ac
index dedc5f1..72d9819 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,7 +26,7 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.57)
-AC_INIT([xorg-server], 1.4, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+AC_INIT([xorg-server], 1.4.0.90, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([dist-bzip2 foreign])
 AM_MAINTAINER_MODE

commit 446efcc554195970cb3ddcd992f7aac617d45b1d
Author: Bartosz Fabianowski [EMAIL PROTECTED]
Date:   Fri Dec 7 02:38:14 2007 +

Input: Fix proximity events with valuators

Initialise num_events to 1, so we always send a proximity event, and then
optionally valuator events.  Also make sure mieq can deal with valuator
events sent after proximity events.
(cherry picked from commit 2dcfab37d38c0c72e9be7cc724047405c8029e88)

diff --git a/dix/getevents.c b/dix/getevents.c
index b70653d..12d8189 100644
--- a/dix/getevents.c
+++ b/dix/getevents.c
@@ -705,7 +705,7 @@ _X_EXPORT int
 GetProximityEvents(xEvent *events, DeviceIntPtr pDev, int type,
int first_valuator, int num_valuators, int *valuators)
 {
-int num_events = 0;
+int num_events = 1;
 deviceKeyButtonPointer *kbp = (deviceKeyButtonPointer *) events;
 
 /* Sanity checks. */
diff --git a/mi/mieq.c b/mi/mieq.c
index 20c4b62..e644090 100644
--- a/mi/mieq.c
+++ 

xorg-server: Changes to 'upstream-unstable'

2007-04-20 Thread Julien Cristau
 GL/glx/glxdri.c
 |6 
 GL/glx/indirect_dispatch_swap.c
 |2 
 GL/glx/indirect_program.c  
 |2 
 GL/glx/indirect_texture_compression.c  
 |2 
 GL/glx/swap_interval.c 
 |2 
 Xext/xcmisc.c  
 |   13 
 configure.ac   
 |   40 
 dev/null   
 |binary
 exa/exa_accel.c
 |8 
 exa/exa_render.c   
 |   18 
 hw/kdrive/ephyr/ephyr.c
 |   25 
 hw/xfree86/Makefile.am 
 |8 
 hw/xfree86/common/compiler.h   
 |4 
 hw/xfree86/common/xf86.h   
 |2 
 hw/xfree86/common/xf86Bus.c
 |8 
 hw/xfree86/common/xf86Bus.h
 |2 
 hw/xfree86/common/xf86Configure.c  
 |8 
 hw/xfree86/common/xf86Module.h 
 |2 
 hw/xfree86/common/xf86PciInfo.h
 |4 
 hw/xfree86/common/xf86xv.c 
 |   66 
 hw/xfree86/common/xf86xv.h 
 |3 
 hw/xfree86/common/xf86xvpriv.h 
 |1 
 hw/xfree86/ddc/Makefile.am 
 |5 
 hw/xfree86/ddc/ddcProperty.c   
 |1 
 hw/xfree86/ddc/xf86DDC.c   
 |   11 
 hw/xfree86/doc/README.modes
 |  474 ++
 hw/xfree86/fbdevhw/fbdevhw.c   
 |  160 
 hw/xfree86/i2c/Makefile.am 
 |5 
 hw/xfree86/loader/Makefile.am  
 |3 
 hw/xfree86/loader/loadmod.c
 |   25 
 hw/xfree86/loader/xf86sym.c
 |   97 
 hw/xfree86/modes/Makefile.am   
 |   29 
 hw/xfree86/modes/xf86Crtc.c
 | 2099 ++
 hw/xfree86/modes/xf86Crtc.h
 |  746 +++
 hw/xfree86/modes/xf86Cursors.c 
 |  607 ++
 hw/xfree86/modes/xf86DiDGA.c   
 |  286 +
 hw/xfree86/modes/xf86EdidModes.c   
 |  353 +
 hw/xfree86/modes/xf86Modes.c   
 |  664 +++
 hw/xfree86/modes/xf86Modes.h   
 |   98 
 hw/xfree86/modes/xf86RandR12.c 
 | 1110 +
 hw/xfree86/modes/xf86RandR12.h 
 |   38 
 hw/xfree86/modes/xf86Rename.h  
 |   84 
 hw/xfree86/modes/xf86Rotate.c  
 |  476 ++
 hw/xfree86/modes/xf86cvt.c 
 |  308 +
 hw/xfree86/os-support/xf86_OSlib.h 
 |2 
 hw/xfree86/parser/Makefile.am  
 |4 
 hw/xfree86/ramdac/Makefile.am  
 |6 
 hw/xfree86/ramdac/xf86Cursor.c 
 |3 
 hw/xfree86/ramdac/xf86Cursor.h 
 |3 
 hw/xfree86/utils/xorgcfg/loadmod.c 
 |2 
 hw/xfree86/utils/xorgcfg/text-mode.c   
 |1 
 hw/xfree86/utils/xorgconfig/Cards  
 |5 
 hw/xfree86/x86emu/ops2.c   
 |   36 
 hw/xprint/config/C/print/models/CANONC3200-PS/fonts/Makefile.am
 |   10 
 hw/xprint/config/C/print/models/HPLJ4050-PS/fonts/Makefile.am  
 |   10