<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://purl.org/rss/1.0/" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:syn="http://purl.org/rss/1.0/modules/syndication/" xmlns:admin="http://webns.net/mvcb/">
  <channel rdf:about="http://blog.gmane.org/gmane.comp.freedesktop.xorg.devel">
    <title>gmane.comp.freedesktop.xorg.devel</title>
    <link>http://blog.gmane.org/gmane.comp.freedesktop.xorg.devel</link>
    <description/>
    <syn:updatePeriod>hourly</syn:updatePeriod>
    <syn:updateFrequency>1</syn:updateFrequency>
    <syn:updateBase>1901-01-01T00:00+00:00</syn:updateBase>
    <items>
      <rdf:Seq>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35730"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35729"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35715"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35712"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35711"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35710"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35709"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35708"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35704"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35701"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35695"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35689"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35682"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35680"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35674"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35673"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35670"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35669"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35662"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35634"/>
      </rdf:Seq>
    </items>
    <image rdf:resource="http://gmane.org/img/gmane-25t.png"/>
    <textinput rdf:resource=""/>
  </channel>
  <image rdf:about="http://gmane.org/img/gmane-25t.png">
    <title>Gmane</title>
    <url>http://gmane.org/img/gmane-25t.png</url>
    <link>http://gmane.org</link>
  </image>
  <item rdf:about="http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35730">
    <title>XvMC regression due to security patch</title>
    <link>http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35730</link>
    <description>&lt;pre&gt;Al Viro pinged me about this, any distro that pushed out the libXvMC patches
has broken Xine!

Dave.

_______________________________________________
xorg-devel-go0+a7rfsptAfugRpC6u6w&amp;lt; at &amp;gt;public.gmane.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel

&lt;/pre&gt;</description>
    <dc:creator>Dave Airlie</dc:creator>
    <dc:date>2013-05-24T04:50:33</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35729">
    <title>Plans for X library releases</title>
    <link>http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35729</link>
    <description>&lt;pre&gt;Patches are fine, but releases are easier to package, especially with
as many Xlib patches as we put forth today.

So if everyone could be testing the current git masters and reporting
any issues found (and hopefully the tinderboxes will do so as well),
then we'll be less likely to put out immediate brown-bag re-releases.

I've just pushed a RC of Xlib 1.6 out, and as mentioned in its announcement,
unless any blockers turn up, plan to push out 1.6.0 final in the first week
of June.

For the rest of the libraries, I'm not planning on any RC's, just testing
of git, and then final releases next week (since Monday is a US holiday,
that's Tuesday May 28 - Friday May 31).

Releases I plan to make next week from the current git master branches:

libdmx 1.1.3
libFS 1.0.5
libXcursor 1.1.14
libXext 1.3.2
libXfixes 5.0.1
libXinerama 1.1.3
libXp 1.0.2
libXrandr 1.4.1
libXrender 0.9.8
libXt 1.1.4
libXtst 1.2.1
libXv 1.0.8
libXvMC 1.0.8
libXxf86dga 1.1.4
libXxf86vm 1.1.3

Releases I plan to make next week from non-master branches:

libxcb 1.9.1  (xcb-1.9 branch)
libXRes 1.0.7 (libXres-1.0-branch)

Releases I plan to let whot handle:

libXi

&lt;/pre&gt;</description>
    <dc:creator>Alan Coopersmith</dc:creator>
    <dc:date>2013-05-24T03:14:34</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35715">
    <title>[PATCH 0/5] integer overflows in Xdmx &amp; Xephyr</title>
    <link>http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35715</link>
    <description>&lt;pre&gt;As part of the report of the security bugs announced this morning, the same
researcher also reported similar issues in the client-side GLX &amp;amp; DRI code in
the Xdmx &amp;amp; Xephyr X servers.   Since these are not normally installed setuid
or otherwise with higher privileges than the underlying X servers that they
connect to, the X.Org security team agreed to treat these as simple bug fixes,
not security issues.

These are candidates for stable releases as they do fix server crashes, but
only in rare cases when malformed protocol is sent by the X server they 
display onto.

Alan Coopersmith (5):
  Xdmx: integer overflow in GetGLXVisualConfigs()
  Xdmx: integer overflow in GetGLXFBConfigs()
  Xephyr: integer overflow in ephyrHostGLXGetStringFromServer()
  Xephyr: integer overflow in XF86DRIOpenConnection()
  Xephyr: integer overflow in XF86DRIGetClientDriverName()

 hw/dmx/dmx_glxvisuals.c        |   25 +++++++++++++++++--------
 hw/kdrive/ephyr/XF86dri.c      |   14 ++++++++++----
 hw/kdrive/ephyr/ephyrhostglx.c |   40 +++++++++++++++++++++++-----------------
 3 files changed, 50 insertions(+), 29 deletions(-)

&lt;/pre&gt;</description>
    <dc:creator>Alan Coopersmith</dc:creator>
    <dc:date>2013-05-23T16:27:25</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35712">
    <title>[ANNOUNCE] X.Org Security Advisory: Protocol handling issues in XWindow System client libraries</title>
    <link>http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35712</link>
    <description>&lt;pre&gt;X.Org Security Advisory:  May 23, 2013
Protocol handling issues in X Window System client libraries
============================================================

Description:
============

Ilja van Sprundel, a security researcher with IOActive, has discovered
a large number of issues in the way various X client libraries handle
the responses they receive from servers, and has worked with X.Org's
security team to analyze, confirm, and fix these issues.

Most of these issues stem from the client libraries trusting the server
to send correct protocol data, and not verifying that the values will
not overflow or cause other damage.   Most of the time X clients &amp;amp; servers
are run by the same user, with the server more privileged from the clients,
so this is not a problem, but there are scenarios in which a privileged
client can be connected to an unprivileged server, for instance, connecting
a setuid X client (such as a screen lock program) to a virtual X server
(such as Xvfb or Xephyr) which the user has modified to return invalid
data, potentially allowing the user to escalate their privileges.

The X.Org security team would like to take this opportunity to remind
X client authors that current best practices suggest separating code
that requires privileges from the GUI, to reduce the attack surface of
issues like this.

The vulnerabilities include:

- integer overflows calculating memory needs for replies

    These calls do not check that their calculations for how much memory
    is needed to handle the returned data have not overflowed, so can
    result in allocating too little memory and then writing the returned
    data past the end of the allocated buffer.

    * CVE-2013-1981: libX11 1.5.99.901 (1.6 RC1) and earlier
      Affected functions:  XQueryFont(), _XF86BigfontQueryFont(),
          XListFontsWithInfo(), XGetMotionEvents(), XListHosts(),
          XGetModifierMapping(), XGetPointerMapping(), XGetKeyboardMapping(),
          XGetWindowProperty(), XGetImage()

    * CVE-2013-1982: libXext 1.3.1 and earlier
      Affected functions:  XcupGetReservedColormapEntries(),
          XcupStoreColors(), XdbeGetVisualInfo(), XeviGetVisualInfo(),
          XShapeGetRectangles(), XSyncListSystemCounters()

    * CVE-2013-1983: libXfixes 5.0 and earlier
      Affected functions:  XFixesGetCursorImage()

    * CVE-2013-1984: libXi 1.7.1 and earlier
      Affected functions:  XGetDeviceControl(), XGetFeedbackControl(),
          XGetDeviceDontPropagateList(), XGetDeviceMotionEvents(),
          XIGetProperty(), XIGetSelectedEvents(), XGetDeviceProperties(),
          XListInputDevices()

    * CVE-2013-1985: libXinerama 1.1.2 and earlier
      Affected functions:  XineramaQueryScreens()

    * CVE-2013-2062: libXp 1.0.1 and earlier
      Affected functions:  XpGetAttributes(), XpGetOneAttribute(),
          XpGetPrinterList(), XpQueryScreens()

    * CVE-2013-1986: libXrandr 1.4.0 and earlier
      Affected functions:  XRRQueryOutputProperty(), XRRQueryProviderProperty()
         [XRRQueryProviderProperty() was introduced in libXrandr 1.4.0 and is
          not found in 1.3.2 and older releases.]

    * CVE-2013-1987: libXrender 0.9.7 and earlier
      Affected functions:  XRenderQueryFilters(), XRenderQueryFormats(),
          XRenderQueryPictIndexValues()

    * CVE-2013-1988: libXRes 1.0.6 and earlier
      Affected functions:  XResQueryClients(), XResQueryClientResources()

    * CVE-2013-2063: libXtst 1.2.1 and earlier
      Affected functions:  XRecordGetContext()

    * CVE-2013-1989: libXv 1.0.7 and earlier
      Affected functions:  XvQueryPortAttributes(), XvListImageFormats(),
          XvCreateImage()

    * CVE-2013-1990: libXvMC 1.0.7 and earlier
      Affected functions:  XvMCListSurfaceTypes(), XvMCListSubpictureTypes()

    * CVE-2013-1991: libXxf86dga 1.1.3 and earlier
      Affected functions:  XDGAQueryModes(), XDGASetMode()

    * CVE-2013-1992: libdmx 1.1.2 and earlier
      Affected functions:  DMXGetScreenAttributes(), DMXGetWindowAttributes(),
          DMXGetInputAttributes()

    * CVE-2013-2064: libxcb 1.9 and earlier
      Affected functions:  read_packet()

    * CVE-2013-1993: libGLX in Mesa 9.1.1 and earlier
      Affected functions:  XF86DRIOpenConnection(), XF86DRIGetClientDriverName()

    * CVE-2013-1994: libchromeXvMC &amp;amp; libchromeXvMCPro in openChrome 0.3.2
      and earlier
      Affected functions:  uniDRIOpenConnection(), uniDRIGetClientDriverName()

- sign extension issues calculating memory needs for replies

    These calls do not check that their calculations for how much memory
    is needed to handle the returned data have not had sign extension
    issues when converting smaller integer types to larger ones, leading
    to negative numbers being used in memory size calculations that can
    result in allocating too little memory and then writing the returned
    data past the end of the allocated buffer.

    * CVE-2013-1995: libXi 1.7.1 and earlier
      Affected functions:  XListInputDevices()

    * CVE-2013-1996: libFS 1.0.4 and earlier
      Affected functions:  FSOpenServer()

- buffer overflows due to not validating length or offset values in replies

    These calls do not check that the lengths and/or indexes returned by the
    server are within the bounds specified by the caller or the bounds of the
    memory allocated by the function, so could write past the bounds of
    allocated memory when storing the returned data.

    * CVE-2013-1997: libX11 1.5.99.901 (1.6 RC1) and earlier
      Affected functions:  XAllocColorCells(), _XkbReadGetDeviceInfoReply(),
          _XkbReadGeomShapes(), _XkbReadGetGeometryReply(), _XkbReadKeySyms(),
          _XkbReadKeyActions(), _XkbReadKeyBehaviors(), _XkbReadModifierMap(),
          _XkbReadExplicitComponents(), _XkbReadVirtualModMap(),
          _XkbReadGetNamesReply(), _XkbReadGetMapReply(), _XimXGetReadData(), 
          XListFonts(), XListExtensions(), XGetFontPath()

    * CVE-2013-1998: libXi 1.7.1 and earlier
      Affected functions:  XGetDeviceButtonMapping(), _XIPassiveGrabDevice(),
          XQueryDeviceState()

    * CVE-2013-2066: libXv 1.0.7 and earlier
      Affected functions:  XvQueryPortAttributes()

    * CVE-2013-1999: libXvMC 1.0.7 and earlier
      Affected functions:  XvMCGetDRInfo()

    * CVE-2013-2000: libXxf86dga 1.1.3 and earlier
      Affected functions:  XDGAQueryModes(), XDGASetMode()

    * CVE-2013-2001: libXxf86vm 1.1.2 and earlier
      Affected functions:  XF86VidModeGetGammaRamp()

    * CVE-2013-2002: libXt 1.1.3 and earlier
      Affected functions:  _XtResourceConfigurationEH()

- integer overflows parsing user-specified files

    These calls do not check that their calculations for how much memory
    is needed to handle the data being read have not overflowed, so can
    result in allocating too little memory and then writing the returned
    data past the end of the allocated buffer.

    * CVE-2013-1981: libX11 1.5.99.901 (1.6 RC1) and earlier
      Affected functions:  LoadColornameDB(), XrmGetFileDatabase(),
          _XimParseStringFile(), TransFileName()

    * CVE-2013-2003: libXcursor 1.1.13 and earlier
      Affected functions:  _XcursorFileHeaderCreate()

- unbounded recursion parsing user-specified files

    These calls read in files and handle C-style '#include' directives
    to include other files, and have no limit for how many levels deep
    they will go, including allowing files to #include themselves, until
    the stack overflows from the recursive function calling patterns.

    * CVE-2013-2004: libX11 1.5.99.901 (1.6 RC1) and earlier
      Affected functions:  GetDatabase(), _XimParseStringFile()

- memory corruption due to unchecked return values

    These calls assume that pointers are properly initialized by the
    XGetWindowProperty() function and don't check for failure of the
    function to return a valid window property, which can lead to
    use of uninitialized pointers for reading, writing, or passing to
    functions such as free().   XGetWindowProperty() in libX11 1.5.99.901
    (1.6RC1) and earlier did not ensure returned pointers were initialized
    to NULL when returning a failure (this is fixed in libX11 1.5.99.902
    and later).

    * CVE-2013-2005: libXt 1.1.3 and earlier
      Affected functions:  ReqCleanup(), HandleSelectionEvents(),
          ReqTimedOut(), HandleNormal(), HandleSelectionReplies()

Affected Versions
=================

X.Org believes all prior versions of these libraries contain these
flaws, dating back to their introduction.

Versions of the X libraries built on top of the Xlib bridge to the XCB 
framework are vulnerable to fewer issues than those without, due to the
added safety and consistency assertions in the XCB calls to read data
from the network, but most of these vulnerabilities are not caught by
those checks.

Fixes
=====

Fixes are available in git commits and patches which will be listed
on http://www.x.org/wiki/Development/Security/Advisory-2013-05-23
when this advisory is released.

Fixes will also be included in these module releases from X.Org:

    libX11 1.5.99.902 (1.6 RC2)
    libXcursor 1.1.14
    libXext 1.3.2
    libXfixes 5.0.1
    libXi 1.7.2
    libXinerama 1.1.3
    libXp 1.0.2
    libXrandr 1.4.1
    libXrender 0.9.8
    libXRes 1.0.7
    libXv 1.0.8
    libXvMC 1.0.8
    libXxf86dga 1.1.4
    libXxf86vm 1.1.3
    libdmx 1.1.3
    libxcb 1.9.1
    libFS 1.0.5
    libXt 1.1.4

or releases to be determined from our sister projects:
    xf86-video-openchrome    OpenChrome project - http://www.openchrome.org/
    Mesa                     Mesa3D project - http://www.mesa3d.org/

Thanks
======

X.Org thanks Ilja van Sprundel of IOActive for reporting these issues to our
security team and assisting them in understanding them and evaluating our
fixes, and Alan Coopersmith of Oracle for coordinating the X.Org response and
developing the fixes for these issues.

&lt;/pre&gt;</description>
    <dc:creator>Alan Coopersmith</dc:creator>
    <dc:date>2013-05-23T15:05:22</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35711">
    <title>[PULL unreviewed] touch fixes for #56578</title>
    <link>http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35711</link>
    <description>&lt;pre&gt;Still unreviewed, don't expect them to get reviewed or even understood, so
can we please merge this so it gets some testing outside of my box and the
few that see the bug. This fixes a rather bad bug where we just read/write
to a dangling pointer on almost every touch event.

The following changes since commit 2f1aedcaed8fd99b823d451bf1fb02330c078f67:

  input: print warnings if drivers don't initialize properly (2013-05-10 11:05:00 +1000)

are available in the git repository at:

  git://people.freedesktop.org/~whot/xserver touch-grab-race-condition-56578-v3

for you to fetch changes up to 9a5ad65330693b3273972b63d10f2907d9ab954a:

  Abstract cursor refcounting (2013-05-15 19:17:57 +1000)

----------------------------------------------------------------
Peter Hutterer (28):
      Xi: not having an ownership mask does not mean automatic acceptance
      dix: don't prepend an activated passive grab to the listeners
      Xi: if we delivered a TouchEnd to a passive grab, end it
      Xi: update the core listener state if we delivered the touch event
      Xi: fix lookup in ActivateEarlyAccept
      Xi: if a passive async grab is activated from an emulated touch, accept
      Xi: save state for early acceptance
      Xi: when punting to a new owner, always create TouchEnd events
      Xi: use public.processInputProc to replay the touch history
      Xi: Don't emit a TouchEnd event to a frozen device
      dix: move EmitTouchEnd to touch.c
      dix: XAllowEvents() on a touch event means accepting it
      dix: invert a loop condition
      dix: use a tmp variable for the to-be-removed touch listener
      dix: drop DeviceIntRec's activeGrab struct
      dix: use a temporary variable for listeners[0]
      dix: freeing a null grab is a bug, complain if doing so
      dix: AllocGrab can copy if an argument is passed in
      dix: always copy grabs, don't reference them
      dix: remove all listeners when freeing a touch
      Move TouchListenerGone call to CloseDownClient
      Xi: check for HAS_ACCEPTED only for grab listeners
      dix: free the old grab when activating a new grab
      dix: fix cursor refcounting
      Xi: fix warning - remove unused 'rc'
      dix: devices must have valuators before touch is initialized
      dix: call UpdateDeviceState() for emulated TouchEndEvents
      Abstract cursor refcounting

 Xext/saver.c                   |   8 +--
 Xi/exevents.c                  | 120 ++++++++++++++++++++---------------------
 Xi/ungrdevb.c                  |   2 +-
 Xi/ungrdevk.c                  |   2 +-
 Xi/xipassivegrab.c             |   2 +-
 dix/cursor.c                   |  33 +++++++++++-
 dix/devices.c                  |   5 +-
 dix/dispatch.c                 |   1 +
 dix/events.c                   |  89 +++++++++++++++---------------
 dix/grabs.c                    |  21 ++++----
 dix/touch.c                    | 114 ++++++++++++++++++++++++++++++++-------
 dix/window.c                   |  15 ++----
 hw/xfree86/modes/xf86Cursors.c |   4 +-
 hw/xfree86/ramdac/xf86Cursor.c |  28 +++++-----
 include/cursor.h               |   4 ++
 include/dixgrabs.h             |   2 +-
 include/eventstr.h             |   1 +
 include/input.h                |   2 +
 include/inputstr.h             |   2 +-
 render/animcur.c               |   3 +-
 xfixes/cursor.c                |   6 +--
 21 files changed, 287 insertions(+), 177 deletions(-)
_______________________________________________
xorg-devel-go0+a7rfsptAfugRpC6u6w&amp;lt; at &amp;gt;public.gmane.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel

&lt;/pre&gt;</description>
    <dc:creator>Peter Hutterer</dc:creator>
    <dc:date>2013-05-23T05:57:29</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35710">
    <title>[PULL unreviewed] scaling, valuator initialization</title>
    <link>http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35710</link>
    <description>&lt;pre&gt;The following changes since commit 7e97166c4fc38076b6224e4dbdd632b43444149f:

  Shadow: Switch the Amiga/Atari bitplane code to the canonical X.Org license (2013-05-14 14:41:00 -0700)

are available in the git repository at:

  git://people.freedesktop.org/~whot/xserver unreviewed

for you to fetch changes up to 6589f3b55e335eef6c658c8ba1fe15a062f7e31c:

  dix: devices must have valuators before touch is initialized (2013-05-23 15:35:11 +1000)

----------------------------------------------------------------
Peter Hutterer (3):
      dix: pre-scale x by the screen:device:resolution ratio
      dix: fix device scaling to use a [min,max[ range.
      dix: devices must have valuators before touch is initialized

 dix/devices.c   |  5 +++--
 dix/getevents.c | 60 ++++++++++++++++++++++++++++++++++++---------------------
 2 files changed, 41 insertions(+), 24 deletions(-)
_______________________________________________
xorg-devel-go0+a7rfsptAfugRpC6u6w&amp;lt; at &amp;gt;public.gmane.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel&lt;/pre&gt;</description>
    <dc:creator>Peter Hutterer</dc:creator>
    <dc:date>2013-05-23T05:38:50</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35709">
    <title>[PULL] Xephyr man page fixes</title>
    <link>http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35709</link>
    <description>&lt;pre&gt;The following changes since commit 2f1aedcaed8fd99b823d451bf1fb02330c078f67:

  input: print warnings if drivers don't initialize properly (2013-05-10 11:05:00 +1000)

are available in the git repository at:

  git://people.freedesktop.org/~whot/xserver for-keith

for you to fetch changes up to 49521edaf8930b335afac2185209e26e7000820b:

  ephyr: add -resizeable to the man page (2013-05-15 09:36:00 +1000)

----------------------------------------------------------------
Peter Hutterer (2):
      ephyr: fix typo in man page
      ephyr: add -resizeable to the man page

 hw/kdrive/ephyr/man/Xephyr.man | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)
_______________________________________________
xorg-devel-go0+a7rfsptAfugRpC6u6w&amp;lt; at &amp;gt;public.gmane.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel&lt;/pre&gt;</description>
    <dc:creator>Peter Hutterer</dc:creator>
    <dc:date>2013-05-23T05:34:45</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35708">
    <title>[PATCH libXi] Don't overwrite the cookies serial number</title>
    <link>http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35708</link>
    <description>&lt;pre&gt;serial != sequenceNumber, see _XSetLastRequestRead()

cookie-&amp;gt;serial is already set at this point, setting it again directly from
the sequenceNumber of the event causes a bunch of weird issues such as
scrollbars and text drag-n-drop breaking.

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

Fixes regression introduced in 5d43d4914dcabb6de69859567061e99300e56ef4

Signed-off-by: Peter Hutterer &amp;lt;peter.hutterer-Pf4JEFdB4epeoWH0uzbU5w&amp;lt; at &amp;gt;public.gmane.org&amp;gt;
---
 src/XExtInt.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/src/XExtInt.c b/src/XExtInt.c
index 8e19b97..d3c6b7c 100644
--- a/src/XExtInt.c
+++ b/src/XExtInt.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -915,7 +915,6 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static void xge_copy_to_cookie(xGenericEvent* ev,
     cookie-&amp;gt;type = ev-&amp;gt;type;
     cookie-&amp;gt;evtype = ev-&amp;gt;evtype;
     cookie-&amp;gt;extension = ev-&amp;gt;extension;
-    cookie-&amp;gt;serial = ev-&amp;gt;sequenceNumber;
 }
 
 static Bool
&lt;/pre&gt;</description>
    <dc:creator>Peter Hutterer</dc:creator>
    <dc:date>2013-05-22T23:17:01</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35704">
    <title>[PATCH mkfontscale] Document -u/-U options in man page</title>
    <link>http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35704</link>
    <description>&lt;pre&gt;Signed-off-by: Peter Hutterer &amp;lt;peter.hutterer-Pf4JEFdB4epeoWH0uzbU5w&amp;lt; at &amp;gt;public.gmane.org&amp;gt;
---
 man/mkfontscale.man | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/man/mkfontscale.man b/man/mkfontscale.man
index 4ed3d7d..4aa88ab 100644
--- a/man/mkfontscale.man
+++ b/man/mkfontscale.man
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -36,6 +36,8 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; mkfontscale \- create an index of scalable font files for X
 .B \-n
 .I prefix
 ] [
+.B \-u | \-U
+] [
 .B \-\-
 ] [
 .I directory
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -126,6 +128,10 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; options.
 do not scan for fonts, do not write font directory files.  This option
 is useful when generating encoding directories only.
 .TP
+.B \-u, \-U
+disable (\fI-u\fP) or enable (\fI-U\fP) indexing of ISO 10646:1 font
+encodings (default: enabled).
+.TP
 .B \-\-
 end of options.
 .SH SEE ALSO
&lt;/pre&gt;</description>
    <dc:creator>Peter Hutterer</dc:creator>
    <dc:date>2013-05-21T05:52:09</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35701">
    <title>[PATCH xkbcomp 1/2] Use DEBUG,not DEBUG_ON to determine whether debugging is enabled</title>
    <link>http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35701</link>
    <description>&lt;pre&gt;Nothing else looks at DEBUG_ON.

Signed-off-by: Peter Hutterer &amp;lt;peter.hutterer-Pf4JEFdB4epeoWH0uzbU5w&amp;lt; at &amp;gt;public.gmane.org&amp;gt;
---
 utils.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/utils.h b/utils.h
index 63eda36..417d104 100644
--- a/utils.h
+++ b/utils.h
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -247,7 +247,7 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; extern
      extern int uDebugIndentSize;
 #defineuDebugIndent(l)(uDebugIndentLevel+=(l))
 #defineuDebugOutdent(l)(uDebugIndentLevel-=(l))
-#ifdef DEBUG_ON
+#ifdef DEBUG
 #defineuDEBUG(f,s){ if (DEBUG_VAR&amp;amp;(f)) uDebug(s);}
 #defineuDEBUG1(f,s,a){ if (DEBUG_VAR&amp;amp;(f)) uDebug(s,a);}
 #defineuDEBUG2(f,s,a,b){ if (DEBUG_VAR&amp;amp;(f)) uDebug(s,a,b);}
&lt;/pre&gt;</description>
    <dc:creator>Peter Hutterer</dc:creator>
    <dc:date>2013-05-21T05:21:36</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35695">
    <title>where does "CARD18" come from?</title>
    <link>http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35695</link>
    <description>&lt;pre&gt;Hello,

I was wondering where the names of various data types listed here may
come from:
http://www.x.org/wiki/XSessionManagementProtocol#Data_Types

Most of them are clear, but these ones picked my interest:

 CARD8
 a one-byte unsigned integer

 CARD16
 a two-byte unsigned integer

 CARD32
 a four-byte unsigned integer 

Do you know what is the etymology of these type names? Do they mean
"character...", but what does "d" stand for? In Lisp "car" is a
function that returns the first element of the list but I think Xorg
has nothing to do with Lisp.

History is interesting ;)
&lt;/pre&gt;</description>
    <dc:creator>wempwer-Re5JQEeQqe8AvxtiuMwx3w&lt; at &gt;public.gmane.org</dc:creator>
    <dc:date>2013-05-20T05:12:44</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35689">
    <title>[PATCH:libX11] Make sure internal headers include required headers</title>
    <link>http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35689</link>
    <description>&lt;pre&gt;From: Niveditha Rau &amp;lt;Niveditha.Rau-veTT2BtV2gBXrIkS9f7CXA&amp;lt; at &amp;gt;public.gmane.org&amp;gt;

Fixes builds with Solaris Studio 12.3 when lint is enabled, since it no
longer ignores *.h files, but complains when they reference undefined
typedefs or macros.

Signed-off-by: Niveditha Rau &amp;lt;Niveditha.Rau-veTT2BtV2gBXrIkS9f7CXA&amp;lt; at &amp;gt;public.gmane.org&amp;gt;
Signed-off-by: Alan Coopersmith &amp;lt;alan.coopersmith-QHcLZuEGTsvQT0dZR+AlfA&amp;lt; at &amp;gt;public.gmane.org&amp;gt;
---
 src/Cmap.h         |    2 ++
 src/Cr.h           |    2 ++
 src/Key.h          |    3 +++
 src/Xintatom.h     |    1 +
 src/Xintconn.h     |    1 +
 src/Xprivate.h     |    2 ++
 src/Xresinternal.h |    2 ++
 src/locking.h      |    2 ++
 8 files changed, 15 insertions(+)

diff --git a/src/Cmap.h b/src/Cmap.h
index 062b538..78cc3ea 100644
--- a/src/Cmap.h
+++ b/src/Cmap.h
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -2,6 +2,8 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt;
 #ifndef _CMAP_H_
 #define _CMAP_H_
 
+#include &amp;lt;X11/Xlib.h&amp;gt;
+
 extern void
 _XcmsDeleteCmapRec(
     Display *dpy,
diff --git a/src/Cr.h b/src/Cr.h
index 800c9ab..635e9e4 100644
--- a/src/Cr.h
+++ b/src/Cr.h
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -2,6 +2,8 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt;
 #ifndef _CR_H_
 #define _CR_H_
 
+#include &amp;lt;X11/Xlib.h&amp;gt;
+
 extern int _XUpdateGCCache(
     register GC gc,
     register unsigned long mask,
diff --git a/src/Key.h b/src/Key.h
index 0fe89ba..bb25439 100644
--- a/src/Key.h
+++ b/src/Key.h
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -2,6 +2,9 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt;
 #ifndef _KEY_H_
 #define _KEY_H_
 
+#include &amp;lt;X11/Xlib.h&amp;gt;
+#include &amp;lt;X11/Xresource.h&amp;gt;
+
 #ifndef NEEDKTABLE
 extern const unsigned char _XkeyTable[];
 #endif
diff --git a/src/Xintatom.h b/src/Xintatom.h
index 82dba36..516a72b 100644
--- a/src/Xintatom.h
+++ b/src/Xintatom.h
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -2,6 +2,7 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt;
 #ifndef _XINTATOM_H_
 #define _XINTATOM_H_ 1
 
+#include &amp;lt;X11/Xlib.h&amp;gt;
 #include &amp;lt;X11/Xfuncproto.h&amp;gt;
 
 /* IntAtom.c */
diff --git a/src/Xintconn.h b/src/Xintconn.h
index db59061..cd9aee3 100644
--- a/src/Xintconn.h
+++ b/src/Xintconn.h
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -3,6 +3,7 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt;
 #define _XINTCONN_H_ 1
 
 #include &amp;lt;X11/Xfuncproto.h&amp;gt;
+#include &amp;lt;X11/Xlib.h&amp;gt;
 
 _XFUNCPROTOBEGIN
 
diff --git a/src/Xprivate.h b/src/Xprivate.h
index 006b170..6bfe70b 100644
--- a/src/Xprivate.h
+++ b/src/Xprivate.h
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -8,6 +8,8 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt;
 #ifndef XPRIVATE_H
 #define XPRIVATE_H
 
+#include &amp;lt;X11/Xlib.h&amp;gt;
+
 extern _X_HIDDEN void _XIDHandler(Display *dpy);
 extern _X_HIDDEN void _XSeqSyncFunction(Display *dpy);
 extern _X_HIDDEN void _XSetPrivSyncFunction(Display *dpy);
diff --git a/src/Xresinternal.h b/src/Xresinternal.h
index c2f355f..b5cc7ff 100644
--- a/src/Xresinternal.h
+++ b/src/Xresinternal.h
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -2,6 +2,8 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt;
 #ifndef _XRESINTERNAL_H_
 #define _XRESINTERNAL_H_
 
+#include &amp;lt;X11/Xlib.h&amp;gt;
+#include &amp;lt;X11/Xresource.h&amp;gt;
 #include &amp;lt;inttypes.h&amp;gt;
 
 /* type defines */
diff --git a/src/locking.h b/src/locking.h
index 96019fc..5251a60 100644
--- a/src/locking.h
+++ b/src/locking.h
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -36,6 +36,8 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; in this Software without prior written authorization from The Open Group.
 
 #define xmalloc(s) Xmalloc(s)
 #define xfree(s) Xfree(s)
+#include &amp;lt;X11/Xlib.h&amp;gt;
+#include &amp;lt;X11/Xlibint.h&amp;gt;
 #include &amp;lt;X11/Xthreads.h&amp;gt;
 
 struct _XCVList {
&lt;/pre&gt;</description>
    <dc:creator>Alan Coopersmith</dc:creator>
    <dc:date>2013-05-17T22:28:04</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35682">
    <title>X11 status Capture for an arbitary application</title>
    <link>http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35682</link>
    <description>&lt;pre&gt;Hi,
I am currently challenged with the following problem.Any help would be
appreciated.

For some x11 application at some particular moment i would like to access
all its component's status ( window positions , child windows ,menu lists ,
event queue status and everything else) .

What are the functions that can be used for this purpose ?

&lt;/pre&gt;</description>
    <dc:creator>Dibyayan Chakraborty</dc:creator>
    <dc:date>2013-05-17T14:31:30</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35680">
    <title>[PATCH libXi] Copy the sequence number into the target event too(#64687)</title>
    <link>http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35680</link>
    <description>&lt;pre&gt;X.Org Bug 64687 &amp;lt;http://bugs.freedesktop.org/show_bug.cgi?id=64687&amp;gt;

Signed-off-by: Peter Hutterer &amp;lt;peter.hutterer-Pf4JEFdB4epeoWH0uzbU5w&amp;lt; at &amp;gt;public.gmane.org&amp;gt;
---
 src/XExtInt.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/src/XExtInt.c b/src/XExtInt.c
index 507573b..2139c6a 100644
--- a/src/XExtInt.c
+++ b/src/XExtInt.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -915,6 +915,7 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static void xge_copy_to_cookie(xGenericEvent* ev,
     cookie-&amp;gt;type = ev-&amp;gt;type;
     cookie-&amp;gt;evtype = ev-&amp;gt;evtype;
     cookie-&amp;gt;extension = ev-&amp;gt;extension;
+    cookie-&amp;gt;serial = ev-&amp;gt;sequenceNumber;
 }
 
 static Bool
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -1521,6 +1522,7 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; wireToDeviceEvent(xXIDeviceEvent *in, XGenericEventCookie* cookie)
     out = next_block(&amp;amp;ptr_lib, sizeof(XIDeviceEvent));
     out-&amp;gt;display = cookie-&amp;gt;display;
     out-&amp;gt;type = in-&amp;gt;type;
+    out-&amp;gt;serial = in-&amp;gt;sequenceNumber;
     out-&amp;gt;extension = in-&amp;gt;extension;
     out-&amp;gt;evtype = in-&amp;gt;evtype;
     out-&amp;gt;send_event = ((in-&amp;gt;type &amp;amp; 0x80) != 0);
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -1793,6 +1795,7 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; wireToDeviceChangedEvent(xXIDeviceChangedEvent *in, XGenericEventCookie *cookie)
     cookie-&amp;gt;data = out = malloc(sizeof(XIDeviceChangedEvent) + len);
 
     out-&amp;gt;type = in-&amp;gt;type;
+    out-&amp;gt;serial = in-&amp;gt;sequenceNumber;
     out-&amp;gt;display = cookie-&amp;gt;display;
     out-&amp;gt;extension = in-&amp;gt;extension;
     out-&amp;gt;evtype = in-&amp;gt;evtype;
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -1825,6 +1828,7 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; wireToHierarchyChangedEvent(xXIHierarchyEvent *in, XGenericEventCookie *cookie)
     out-&amp;gt;info           = (XIHierarchyInfo*)&amp;amp;out[1];
     out-&amp;gt;display        = cookie-&amp;gt;display;
     out-&amp;gt;type           = in-&amp;gt;type;
+    out-&amp;gt;serial = in-&amp;gt;sequenceNumber;
     out-&amp;gt;extension      = in-&amp;gt;extension;
     out-&amp;gt;evtype         = in-&amp;gt;evtype;
     out-&amp;gt;send_event = ((in-&amp;gt;type &amp;amp; 0x80) != 0);
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -1865,6 +1869,7 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; wireToRawEvent(XExtDisplayInfo *info, xXIRawEvent *in, XGenericEventCookie *cook
 
     out = next_block(&amp;amp;ptr, sizeof(XIRawEvent));
     out-&amp;gt;type           = in-&amp;gt;type;
+    out-&amp;gt;serial         = in-&amp;gt;sequenceNumber;
     out-&amp;gt;display        = cookie-&amp;gt;display;
     out-&amp;gt;extension      = in-&amp;gt;extension;
     out-&amp;gt;evtype         = in-&amp;gt;evtype;
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -1915,6 +1920,7 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; wireToEnterLeave(xXIEnterEvent *in, XGenericEventCookie *cookie)
     out-&amp;gt;buttons.mask = (unsigned char*)&amp;amp;out[1];
 
     out-&amp;gt;type           = in-&amp;gt;type;
+    out-&amp;gt;serial         = in-&amp;gt;sequenceNumber;
     out-&amp;gt;display        = cookie-&amp;gt;display;
     out-&amp;gt;extension      = in-&amp;gt;extension;
     out-&amp;gt;evtype         = in-&amp;gt;evtype;
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -1957,6 +1963,7 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; wireToPropertyEvent(xXIPropertyEvent *in, XGenericEventCookie *cookie)
     cookie-&amp;gt;data = out;
 
     out-&amp;gt;type           = in-&amp;gt;type;
+    out-&amp;gt;serial         = in-&amp;gt;sequenceNumber;
     out-&amp;gt;extension      = in-&amp;gt;extension;
     out-&amp;gt;evtype         = in-&amp;gt;evtype;
     out-&amp;gt;send_event = ((in-&amp;gt;type &amp;amp; 0x80) != 0);
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -1977,6 +1984,7 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; wireToTouchOwnershipEvent(xXITouchOwnershipEvent *in,
     cookie-&amp;gt;data = out;
 
     out-&amp;gt;type           = in-&amp;gt;type;
+    out-&amp;gt;serial         = in-&amp;gt;sequenceNumber;
     out-&amp;gt;display        = cookie-&amp;gt;display;
     out-&amp;gt;extension      = in-&amp;gt;extension;
     out-&amp;gt;evtype         = in-&amp;gt;evtype;
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -2004,6 +2012,7 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; wireToBarrierEvent(xXIBarrierEvent *in, XGenericEventCookie *cookie)
 
     out-&amp;gt;display    = cookie-&amp;gt;display;
     out-&amp;gt;type       = in-&amp;gt;type;
+    out-&amp;gt;serial     = in-&amp;gt;sequenceNumber;
     out-&amp;gt;extension  = in-&amp;gt;extension;
     out-&amp;gt;evtype     = in-&amp;gt;evtype;
     out-&amp;gt;send_event = ((in-&amp;gt;type &amp;amp; 0x80) != 0);
&lt;/pre&gt;</description>
    <dc:creator>Peter Hutterer</dc:creator>
    <dc:date>2013-05-16T23:09:58</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35674">
    <title>[PATCH 1/2] ephyr: fix typo in man page</title>
    <link>http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35674</link>
    <description>&lt;pre&gt;Signed-off-by: Peter Hutterer &amp;lt;peter.hutterer-Pf4JEFdB4epeoWH0uzbU5w&amp;lt; at &amp;gt;public.gmane.org&amp;gt;
---
 hw/kdrive/ephyr/man/Xephyr.man | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/hw/kdrive/ephyr/man/Xephyr.man b/hw/kdrive/ephyr/man/Xephyr.man
index ca88ab2..792511b 100644
--- a/hw/kdrive/ephyr/man/Xephyr.man
+++ b/hw/kdrive/ephyr/man/Xephyr.man
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -46,7 +46,7 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; and the following additional options:
 sets the screen size.
 .TP 8
 .BI -parent " id"
-uses exiting window
+uses existing window
 .I id .
 If a
 .BI -screen
&lt;/pre&gt;</description>
    <dc:creator>Peter Hutterer</dc:creator>
    <dc:date>2013-05-14T23:17:11</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35673">
    <title>[PULL 1.14] ephyr crash, pnprintf fixes</title>
    <link>http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35673</link>
    <description>&lt;pre&gt;The ephyr fix is something useful since I just ran into it myself yesterday.
pnprintf fixes are largely to prevent weird messages on FatalError.


PS: I accidentally pushed this to origin first but reset the repo a minute
later. just in case you saw that float past on the commit list.

The following changes since commit a11cf8dd68275ba4676888e5957bff13efbfbb3d:

  dix: copy event in TouchConvertToPointerEvent correctly (2013-05-06 10:20:18 +1000)

are available in the git repository at:

  git://people.freedesktop.org/~whot/xserver server-1.14-branch

for you to fetch changes up to e90beb18000cf49b9108c4f977abfd111ed908ad:

  os: Use ErrorFSigSafe from FatalError and it's friends (2013-05-14 16:37:32 +1000)

----------------------------------------------------------------
Daniel Martin (1):
      ephyr: Fix crash on 24bpp host framebuffer

Peter Hutterer (8):
      dix: send the current axis value in DeviceChangedEvents (#62321)
      If neither HAL nor udev backends are enabled, warn the user
      os: document pnprintf as sigsafe snprintf
      os: support pnprintf length modifiers for integers
      os: support %% in pnprintf
      os: support %c in pnprintf
      os: complain about unsupported pnprintf directives
      os: Use ErrorFSigSafe from FatalError and it's friends

 configure.ac            |   8 ++++
 dix/eventconvert.c      |   4 +-
 dix/getevents.c         |   1 +
 glx/glxdri.c            |   2 +-
 glx/glxdri2.c           |   2 +-
 hw/kdrive/ephyr/ephyr.c |   6 +--
 hw/kdrive/ephyr/hostx.c |   6 ++-
 hw/kdrive/ephyr/hostx.h |   3 +-
 include/eventstr.h      |   1 +
 os/log.c                | 115 ++++++++++++++++++++++++++++++++++++++++++++----
 test/signal-logging.c   |  95 +++++++++++++++++++++++++++++++++++----
 11 files changed, 214 insertions(+), 29 deletions(-)
_______________________________________________
xorg-devel-go0+a7rfsptAfugRpC6u6w&amp;lt; at &amp;gt;public.gmane.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel&lt;/pre&gt;</description>
    <dc:creator>Peter Hutterer</dc:creator>
    <dc:date>2013-05-14T22:41:46</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35670">
    <title>[PATCH] Shadow: Switch the Amiga/Atari bitplane code to the canonicalX.Org license</title>
    <link>http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35670</link>
    <description>&lt;pre&gt;Also add my name to the list of authors in COPYING

Suggested-by: Alan Coopersmith &amp;lt;alan.coopersmith-QHcLZuEGTsvQT0dZR+AlfA&amp;lt; at &amp;gt;public.gmane.org&amp;gt;
Signed-off-by: Geert Uytterhoeven &amp;lt;geert-Td1EMuHUCqxL1ZNQvxDV9g&amp;lt; at &amp;gt;public.gmane.org&amp;gt;
Cc: Keith Packard &amp;lt;keithp-aN4HjG94KOLQT0dZR+AlfA&amp;lt; at &amp;gt;public.gmane.org&amp;gt;
---
Alternative pull request:

The following changes since commit 2f1aedcaed8fd99b823d451bf1fb02330c078f67:
  Peter Hutterer (1):
        input: print warnings if drivers don't initialize properly

are available in the git repository at:

  https://github.com/geertu/xorg-xserver.git master

Geert Uytterhoeven (1):
      Shadow: Switch the Amiga/Atari bitplane code to the canonical X.Org license

 COPYING                   |    1 +
 miext/shadow/c2p_core.h   |   37 +++++++++++++++++++------------------
 miext/shadow/shafb4.c     |   36 ++++++++++++++++++------------------
 miext/shadow/shafb8.c     |   36 ++++++++++++++++++------------------
 miext/shadow/shiplan2p4.c |   36 ++++++++++++++++++------------------
 miext/shadow/shiplan2p8.c |   36 ++++++++++++++++++------------------
 6 files changed, 92 insertions(+), 90 deletions(-)

diff --git a/COPYING b/COPYING
index 7aa0df0..cc52a32 100644
--- a/COPYING
+++ b/COPYING
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -20,6 +20,7 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; Copyright Â© 1999 Keith Packard
 Copyright Â© 2007-2009 Red Hat, Inc.
 Copyright Â© 2005-2008 Daniel Stone
 Copyright Â© 2006-2009 Simon Thum
+Copyright Â© 2003-2008, 2013 Geert Uytterhoeven
 Copyright Â© 2006 Luc Verhaegen
 
 Permission is hereby granted, free of charge, to any person obtaining a
diff --git a/miext/shadow/c2p_core.h b/miext/shadow/c2p_core.h
index a48e223..5b9ea06 100644
--- a/miext/shadow/c2p_core.h
+++ b/miext/shadow/c2p_core.h
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -1,29 +1,30 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt;
 /*
  *  Fast C2P (Chunky-to-Planar) Conversion
  *
- *  Copyright (C) 2003-2008 Geert Uytterhoeven
- *
  *  NOTES:
  *    - This code was inspired by Scout's C2P tutorial
  *    - It assumes to run on a big endian system
  *
- *  Permission to use, copy, modify, distribute, and sell this software and its
- *  documentation for any purpose is hereby granted without fee, provided that
- *  the above copyright notice appear in all copies and that both that
- *  copyright notice and this permission notice appear in supporting
- *  documentation, and that the name of Geert Uytterhoeven not be used in
- *  advertising or publicity pertaining to distribution of the software without
- *  specific, written prior permission.  Geert Uytterhoeven makes no
- *  representations about the suitability of this software for any purpose.  It
- *  is provided "as is" without express or implied warranty.
+ *  Copyright Â© 2003-2008 Geert Uytterhoeven
+ *
+ *  Permission is hereby granted, free of charge, to any person obtaining a
+ *  copy of this software and associated documentation files (the "Software"),
+ *  to deal in the Software without restriction, including without limitation
+ *  the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ *  and/or sell copies of the Software, and to permit persons to whom the
+ *  Software is furnished to do so, subject to the following conditions:
+ *
+ *  The above copyright notice and this permission notice (including the next
+ *  paragraph) shall be included in all copies or substantial portions of the
+ *  Software.
  *
- *  GEERT UYTTERHOEVEN DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
- *  INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
- *  EVENT SHALL GEERT UYTTERHOEVEN BE LIABLE FOR ANY SPECIAL, INDIRECT OR
- *  CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
- *  DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
- *  TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- *  PERFORMANCE OF THIS SOFTWARE.
+ *  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ *  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ *  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
+ *  THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ *  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ *  FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ *  DEALINGS IN THE SOFTWARE.
  */
 
 
diff --git a/miext/shadow/shafb4.c b/miext/shadow/shafb4.c
index 0724932..d88ae1c 100644
--- a/miext/shadow/shafb4.c
+++ b/miext/shadow/shafb4.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -1,26 +1,26 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt;
 /*
+ *  Copyright Â© 2013 Geert Uytterhoeven
  *
- * Copyright Â© 2013 Geert Uytterhoeven
+ *  Permission is hereby granted, free of charge, to any person obtaining a
+ *  copy of this software and associated documentation files (the "Software"),
+ *  to deal in the Software without restriction, including without limitation
+ *  the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ *  and/or sell copies of the Software, and to permit persons to whom the
+ *  Software is furnished to do so, subject to the following conditions:
  *
- * Permission to use, copy, modify, distribute, and sell this software and its
- * documentation for any purpose is hereby granted without fee, provided that
- * the above copyright notice appear in all copies and that both that
- * copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Geert Uytterhoeven not be used in
- * advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission.  Geert Uytterhoeven makes no
- * representations about the suitability of this software for any purpose.  It
- * is provided "as is" without express or implied warranty.
+ *  The above copyright notice and this permission notice (including the next
+ *  paragraph) shall be included in all copies or substantial portions of the
+ *  Software.
  *
- * GEERT UYTTERHOEVEN DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
- * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
- * EVENT SHALL GEERT UYTTERHOEVEN BE LIABLE FOR ANY SPECIAL, INDIRECT OR
- * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
- * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
- * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- * PERFORMANCE OF THIS SOFTWARE.
+ *  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ *  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ *  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
+ *  THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ *  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ *  FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ *  DEALINGS IN THE SOFTWARE.
  *
- * Based on shpacked.c, which is Copyright Â© 2000 Keith Packard
+ *  Based on shpacked.c, which is Copyright Â© 2000 Keith Packard
  */
 
 #ifdef HAVE_DIX_CONFIG_H
diff --git a/miext/shadow/shafb8.c b/miext/shadow/shafb8.c
index 0835e16..8d84bfa 100644
--- a/miext/shadow/shafb8.c
+++ b/miext/shadow/shafb8.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -1,26 +1,26 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt;
 /*
+ *  Copyright Â© 2013 Geert Uytterhoeven
  *
- * Copyright Â© 2013 Geert Uytterhoeven
+ *  Permission is hereby granted, free of charge, to any person obtaining a
+ *  copy of this software and associated documentation files (the "Software"),
+ *  to deal in the Software without restriction, including without limitation
+ *  the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ *  and/or sell copies of the Software, and to permit persons to whom the
+ *  Software is furnished to do so, subject to the following conditions:
  *
- * Permission to use, copy, modify, distribute, and sell this software and its
- * documentation for any purpose is hereby granted without fee, provided that
- * the above copyright notice appear in all copies and that both that
- * copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Geert Uytterhoeven not be used in
- * advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission.  Geert Uytterhoeven makes no
- * representations about the suitability of this software for any purpose.  It
- * is provided "as is" without express or implied warranty.
+ *  The above copyright notice and this permission notice (including the next
+ *  paragraph) shall be included in all copies or substantial portions of the
+ *  Software.
  *
- * GEERT UYTTERHOEVEN DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
- * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
- * EVENT SHALL GEERT UYTTERHOEVEN BE LIABLE FOR ANY SPECIAL, INDIRECT OR
- * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
- * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
- * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- * PERFORMANCE OF THIS SOFTWARE.
+ *  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ *  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ *  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
+ *  THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ *  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ *  FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ *  DEALINGS IN THE SOFTWARE.
  *
- * Based on shpacked.c, which is Copyright Â© 2000 Keith Packard
+ *  Based on shpacked.c, which is Copyright Â© 2000 Keith Packard
  */
 
 #ifdef HAVE_DIX_CONFIG_H
diff --git a/miext/shadow/shiplan2p4.c b/miext/shadow/shiplan2p4.c
index 79ada99..0e46bae 100644
--- a/miext/shadow/shiplan2p4.c
+++ b/miext/shadow/shiplan2p4.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -1,26 +1,26 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt;
 /*
+ *  Copyright Â© 2013 Geert Uytterhoeven
  *
- * Copyright Â© 2013 Geert Uytterhoeven
+ *  Permission is hereby granted, free of charge, to any person obtaining a
+ *  copy of this software and associated documentation files (the "Software"),
+ *  to deal in the Software without restriction, including without limitation
+ *  the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ *  and/or sell copies of the Software, and to permit persons to whom the
+ *  Software is furnished to do so, subject to the following conditions:
  *
- * Permission to use, copy, modify, distribute, and sell this software and its
- * documentation for any purpose is hereby granted without fee, provided that
- * the above copyright notice appear in all copies and that both that
- * copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Geert Uytterhoeven not be used in
- * advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission.  Geert Uytterhoeven makes no
- * representations about the suitability of this software for any purpose.  It
- * is provided "as is" without express or implied warranty.
+ *  The above copyright notice and this permission notice (including the next
+ *  paragraph) shall be included in all copies or substantial portions of the
+ *  Software.
  *
- * GEERT UYTTERHOEVEN DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
- * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
- * EVENT SHALL GEERT UYTTERHOEVEN BE LIABLE FOR ANY SPECIAL, INDIRECT OR
- * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
- * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
- * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- * PERFORMANCE OF THIS SOFTWARE.
+ *  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ *  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ *  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
+ *  THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ *  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ *  FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ *  DEALINGS IN THE SOFTWARE.
  *
- * Based on shpacked.c, which is Copyright Â© 2000 Keith Packard
+ *  Based on shpacked.c, which is Copyright Â© 2000 Keith Packard
  */
 
 #ifdef HAVE_DIX_CONFIG_H
diff --git a/miext/shadow/shiplan2p8.c b/miext/shadow/shiplan2p8.c
index 55762f6..17d6a13 100644
--- a/miext/shadow/shiplan2p8.c
+++ b/miext/shadow/shiplan2p8.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -1,26 +1,26 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt;
 /*
+ *  Copyright Â© 2013 Geert Uytterhoeven
  *
- * Copyright Â© 2013 Geert Uytterhoeven
+ *  Permission is hereby granted, free of charge, to any person obtaining a
+ *  copy of this software and associated documentation files (the "Software"),
+ *  to deal in the Software without restriction, including without limitation
+ *  the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ *  and/or sell copies of the Software, and to permit persons to whom the
+ *  Software is furnished to do so, subject to the following conditions:
  *
- * Permission to use, copy, modify, distribute, and sell this software and its
- * documentation for any purpose is hereby granted without fee, provided that
- * the above copyright notice appear in all copies and that both that
- * copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Geert Uytterhoeven not be used in
- * advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission.  Geert Uytterhoeven makes no
- * representations about the suitability of this software for any purpose.  It
- * is provided "as is" without express or implied warranty.
+ *  The above copyright notice and this permission notice (including the next
+ *  paragraph) shall be included in all copies or substantial portions of the
+ *  Software.
  *
- * GEERT UYTTERHOEVEN DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
- * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
- * EVENT SHALL GEERT UYTTERHOEVEN BE LIABLE FOR ANY SPECIAL, INDIRECT OR
- * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
- * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
- * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- * PERFORMANCE OF THIS SOFTWARE.
+ *  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ *  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ *  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
+ *  THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ *  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ *  FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ *  DEALINGS IN THE SOFTWARE.
  *
- * Based on shpacked.c, which is Copyright Â© 2000 Keith Packard
+ *  Based on shpacked.c, which is Copyright Â© 2000 Keith Packard
  */
 
 #ifdef HAVE_DIX_CONFIG_H
&lt;/pre&gt;</description>
    <dc:creator>Geert Uytterhoeven</dc:creator>
    <dc:date>2013-05-14T11:15:23</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35669">
    <title>[PATCH] dix: devices must have valuators before touch is initialized</title>
    <link>http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35669</link>
    <description>&lt;pre&gt;Signed-off-by: Peter Hutterer &amp;lt;peter.hutterer-Pf4JEFdB4epeoWH0uzbU5w&amp;lt; at &amp;gt;public.gmane.org&amp;gt;
---
This used to return False before 2f1aedcaed8fd99b823d451bf1fb02330c078f67
but I misssed changing that condition. So now it breaks make check
because InitTouchClassDeviceStruct requires the valuators to be set up.

 dix/devices.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/dix/devices.c b/dix/devices.c
index c514d77..c514cfe 100644
--- a/dix/devices.c
+++ b/dix/devices.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -1647,6 +1647,7 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; InitTouchClassDeviceStruct(DeviceIntPtr device, unsigned int max_touches,
 
     BUG_RETURN_VAL(device == NULL, FALSE);
     BUG_RETURN_VAL(device-&amp;gt;touch != NULL, FALSE);
+    BUG_RETURN_VAL(device-&amp;gt;valuator == NULL, FALSE);
 
     /* Check the mode is valid, and at least X and Y axes. */
     BUG_RETURN_VAL(mode != XIDirectTouch &amp;amp;&amp;amp; mode != XIDependentTouch, FALSE);
&lt;/pre&gt;</description>
    <dc:creator>Peter Hutterer</dc:creator>
    <dc:date>2013-05-13T22:31:19</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35662">
    <title>EXA composite ops don't report damage</title>
    <link>http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35662</link>
    <description>&lt;pre&gt;Hi,

I am investigating a bug in AbiWord where when the screen is rotated,
newly inputted text does not appear in the document. This is affecting
OLPC XO.

The graphics driver
(http://dev.laptop.org/git/projects/xf86-video-dove/) implements
screen rotation via EXA, i.e. it supports composite operations with a
rotation transform applied.

I audited the EXA composite requests from the driver level, dumping
images for the source and dest pixmaps before executing the composite
op, and also the dest pixmap after compositing. My conclusion is that
the driver is doing what it is told.

I can see that the system maintains two big pixmaps - one of the
unrotated screen, and one of the rotated screen (which is shown on the
display). When the unrotated screen is changed, the changed areas are
composited onto the rotated screen. However, in the case of new text
input, the new characters are composited onto the unrotated screen,
but no corresponding composite operation happens in order to update
the rotated screen pixmap.

Turning to to the X server. In xf86Rotate.c I can see that changes to
the screen are tracked by the damage system: when damage is detected,
appropriate composite ops are generated in order to keep the rotated
screen pixmap up to date. In the case of newly input text, no damage
is detected.

Looking in miext/damage/damage.c, I see that it attemps to hook onto
the Composite handler chain so that it knows when parts of the screen
have been updated due to composite operations. But here is where I am
confused.

When EXA handles the composite request in accelerated fashion (e.g.
exaComposite -&amp;gt; exaTryDriverComposite -&amp;gt; driver's composite handler),
it does *not* continue calling down the Composite chain. So in the
composite operation where AbiWord's updated document canvas (with my
newly input text) is composited onto the unrotated screen pixmap, the
damageComposite() handler is never called, so its not surprising that
the damage layer is not aware of this screen update.

Is this a bug? How is this supposed to work?

EXA does continue calling down the Composite chain (correctly calling
into damage.c) in the case where the operation could not be
accelerated (i.e. from ExaCheckComposite() in exa_unaccel.c). But in
this case, since the driver accelerated the operation, this code was
not hit.

Thanks,
Daniel
_______________________________________________
xorg-devel-go0+a7rfsptAfugRpC6u6w&amp;lt; at &amp;gt;public.gmane.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel

&lt;/pre&gt;</description>
    <dc:creator>Daniel Drake</dc:creator>
    <dc:date>2013-05-11T17:19:16</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35634">
    <title>[PULL] plenty of touch fixes, mainly for #56578</title>
    <link>http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35634</link>
    <description>&lt;pre&gt;I'm not going to even pretend this is understandable, given that the first
patches to fix this issue go back to November last year. And touch grab
handling and pointer emulation is such a beast that I can't get it all in my
head anymore. I've got a bunch of test cases that show the various bugs that
have been fixed in this series and we've had some reasonable testing on this
branch. 

The biggest issue fixed here (aside from Ubuntu having a stuck grab
approximately as soon as you touch the dash) is a fix for
xorg-server-1.13.99.901-2-g9ad0fdb. That sticks the grab pointer into the
touch listener, but that grab may get free'd at any time (ProcUngrab*),
leading to dangling pointers and crashes whenever the touch continues.

One remaining issue: the Nexus 7 still seems to trigger some bug, but I've
been unable to reproduce this and in the meantime having these see wider
testing will be useful.


The following changes since commit 2f1aedcaed8fd99b823d451bf1fb02330c078f67:

  input: print warnings if drivers don't initialize properly (2013-05-10 11:05:00 +1000)

are available in the git repository at:

  git://people.freedesktop.org/~whot/xserver touch-grab-race-condition-56578-v3

for you to fetch changes up to 77d8077d2c5e31a0227185e141db64846761faa1:

  dix: fix cursor refcounting (2013-05-10 14:41:15 +1000)

----------------------------------------------------------------
Peter Hutterer (24):
      Xi: not having an ownership mask does not mean automatic acceptance
      dix: don't prepend an activated passive grab to the listeners
      Xi: if we delivered a TouchEnd to a passive grab, end it
      Xi: update the core listener state if we delivered the touch event
      Xi: fix lookup in ActivateEarlyAccept
      Xi: if a passive async grab is activated from an emulated touch, accept
      Xi: save state for early acceptance
      Xi: when punting to a new owner, always create TouchEnd events
      Xi: use public.processInputProc to replay the touch history
      Xi: Don't emit a TouchEnd event to a frozen device
      dix: move EmitTouchEnd to touch.c
      dix: XAllowEvents() on a touch event means accepting it
      dix: invert a loop condition
      dix: use a tmp variable for the to-be-removed touch listener
      dix: drop DeviceIntRec's activeGrab struct
      dix: use a temporary variable for listeners[0]
      dix: freeing a null grab is a bug, complain if doing so
      dix: AllocGrab can copy if an argument is passed in
      dix: always copy grabs, don't reference them
      dix: remove all listeners when freeing a touch
      Move TouchListenerGone call to CloseDownClient
      Xi: check for HAS_ACCEPTED only for grab listeners
      dix: free the old grab when activating a new grab
      dix: fix cursor refcounting

 Xi/exevents.c      | 119 ++++++++++++++++++++++++++---------------------------
 Xi/ungrdevb.c      |   2 +-
 Xi/ungrdevk.c      |   2 +-
 Xi/xipassivegrab.c |   2 +-
 dix/devices.c      |   4 +-
 dix/dispatch.c     |   1 +
 dix/events.c       |  60 +++++++++++++++++----------
 dix/grabs.c        |  13 ++++--
 dix/touch.c        | 112 +++++++++++++++++++++++++++++++++++++++++--------
 include/dixgrabs.h |   2 +-
 include/eventstr.h |   1 +
 include/input.h    |   2 +
 include/inputstr.h |   2 +-
 13 files changed, 211 insertions(+), 111 deletions(-)
_______________________________________________
xorg-devel-go0+a7rfsptAfugRpC6u6w&amp;lt; at &amp;gt;public.gmane.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel

&lt;/pre&gt;</description>
    <dc:creator>Peter Hutterer</dc:creator>
    <dc:date>2013-05-10T05:30:35</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35631">
    <title>[PULL] memleaks, BigRequest fix, more warnings</title>
    <link>http://comments.gmane.org/gmane.comp.freedesktop.xorg.devel/35631</link>
    <description>&lt;pre&gt;The following changes since commit 6993f8b459e25b1a7a0a03e209688a28ce6c2c56:

  Xi: free barrier code at reset time (2013-05-07 09:41:19 +1000)

are available in the git repository at:

  git://people.freedesktop.org/~whot/xserver for-keith

for you to fetch changes up to 2f1aedcaed8fd99b823d451bf1fb02330c078f67:

  input: print warnings if drivers don't initialize properly (2013-05-10 11:05:00 +1000)

----------------------------------------------------------------
Peter Hutterer (4):
      dix: delete all callbacks before reset
      dix: reset the OsBuffers after killing all clients
      dix: don't overwrite proximity/focus classes
      input: print warnings if drivers don't initialize properly

Robert Morell (1):
      os: Reset input buffer's 'ignoreBytes' field

 Xi/exevents.c      | 16 ++++++++++------
 dix/devices.c      | 41 ++++++++++++++++++++++++++++++++---------
 dix/dispatch.c     |  1 +
 dix/dixutils.c     |  8 +++++++-
 dix/main.c         |  2 ++
 include/callback.h |  1 +
 os/io.c            |  1 +
 xkb/xkbInit.c      |  8 +++++---
 8 files changed, 59 insertions(+), 19 deletions(-)
_______________________________________________
xorg-devel-go0+a7rfsptAfugRpC6u6w&amp;lt; at &amp;gt;public.gmane.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel&lt;/pre&gt;</description>
    <dc:creator>Peter Hutterer</dc:creator>
    <dc:date>2013-05-10T01:53:59</dc:date>
  </item>
  <textinput rdf:about="http://search.gmane.org/?group=$group=gmane.comp.freedesktop.xorg.devel">
    <title>Search Engine</title>
    <description>Search the mailing list at Gmane</description>
    <name>query</name>
    <link>http://search.gmane.org/?group=$group=gmane.comp.freedesktop.xorg.devel</link>
  </textinput>
</rdf:RDF>
