Blame NEWS

Packit 5bd3a9
Version 1.1.2 - 2007-06-03
Packit 5bd3a9
Packit 5bd3a9
* Security fixes:
Packit 5bd3a9
  * Fix CVE-2007-1667: Multiple integer overflows in the XGetPixel() and
Packit 5bd3a9
    XInitImage() functions.
Packit 5bd3a9
  * Bug #9279: Fixed a file descriptor leak.
Packit 5bd3a9
Packit 5bd3a9
* Xlib/XCB: Ensure _XReadEvents reads at least one new event and blocks for
Packit 5bd3a9
  exactly one event.  Large performance improvement for XIfEvent and similar.
Packit 5bd3a9
Packit 5bd3a9
* Hold XCB's Xlib lock even when only the user lock (XLockDisplay) is held.
Packit 5bd3a9
  An Xlib client can query Display state, such as with NextRequest, while it
Packit 5bd3a9
  holds only the Xlib user lock (between XLockDisplay and XUnlockDisplay), so
Packit 5bd3a9
  XCB requests in other threads should be blocked when the Xlib user lock is
Packit 5bd3a9
  held.  We acquire the lock even when XInitThreads was not called, so that
Packit 5bd3a9
  pure XCB code can use multiple threads even in an otherwise single-threaded
Packit 5bd3a9
  Xlib application.
Packit 5bd3a9
Packit 5bd3a9
* Allow re-entrant Xlib calls from _XIOError.
Packit 5bd3a9
  Some libraries try to clean up X resources from atexit handlers, _fini, or
Packit 5bd3a9
  C++ destructors. To make these work, downgrade the Display lock to a user
Packit 5bd3a9
  lock (as in XLockDisplay) before calling exit(3).  This blocks Xlib calls
Packit 5bd3a9
  from threads other than the one calling exit(3) while still allowing the
Packit 5bd3a9
  exit handlers to call Xlib.
Packit 5bd3a9
Packit 5bd3a9
* Xlib/XCB: Avoid re-crashing after _XIOError.
Packit 5bd3a9
Packit 5bd3a9
* Xlib/XCB: Only remove pending_requests when there are provably no more responses.
Packit 5bd3a9
Packit 5bd3a9
* For NetBSD, define XTHREADLIB and XTHREAD_CFLAGS.
Packit 5bd3a9
Packit 5bd3a9
* Bug #7703: Fixed XSetSizeHints() et al wrt use of uninitialized data.
Packit 5bd3a9
  Now only those fields of the respective hint struct are set that
Packit 5bd3a9
  are actually valid in the input data.
Packit 5bd3a9
Packit 5bd3a9
* Bug #10292: Fixed a memory leak related to XOpenDisplay() in the XCB code.
Packit 5bd3a9
Packit 5bd3a9
* Bug #7713: Initialize all of the event's fields before sending it.
Packit 5bd3a9
Packit 5bd3a9
* Bug #10562: Define _GNU_SOURCE on glibc systems.
Packit 5bd3a9
Packit 5bd3a9
* Use unistd.h to get getresuid() and friends, now that we have _GNU_SOURCE
Packit 5bd3a9
  defined.
Packit 5bd3a9
Packit 5bd3a9
* Switched function definitions from K&R to ANSI style.
Packit 5bd3a9
Packit 5bd3a9
* Many constness fixes.
Packit 5bd3a9
Packit 5bd3a9
* Fixed a few warnings.
Packit 5bd3a9
Packit 5bd3a9
* Fix 64bit issues with reallocation.
Packit 5bd3a9
Packit 5bd3a9
* Manpage fixes:
Packit 5bd3a9
  * Add man pages for XKB APIs.
Packit 5bd3a9
    (Volunteer needed to convert prototypes in man pages to ANSI C style...)
Packit 5bd3a9
  * Protect C comments and #defines in XKB man pages from being mangled by cpp
Packit 5bd3a9
  * Fix typo in nroff macro in XkbAddGeomOverlayKey.man
Packit 5bd3a9
  * Bug #9695: Fixed a few argument types in the XOpenIM manpage.
Packit 5bd3a9
  * Markup tweak for XOpenIM.
Packit 5bd3a9
  * Bug #9696: refer to XDefineCursor() instead of XDefineCusor().
Packit 5bd3a9
  * Bug #9697: Fixed documentation of XVisualInfo struct.  The "depth" member
Packit 5bd3a9
    was said to be unsigned int, but it's signed.
Packit 5bd3a9
Packit 5bd3a9
* nls fixes:
Packit 5bd3a9
  * Update el_GR.UTF-8/Compose.pre to match changes in xkeyboard-config cvs.
Packit 5bd3a9
  * For nls/*.pre, allow people to comment lines by starting them with '##'.
Packit 5bd3a9
Packit 5bd3a9
* Build system fixes:
Packit 5bd3a9
  * Add autogen.sh to EXTRA_DIST.
Packit 5bd3a9
  * Makefile.am: make ChangeLog hook safer
Packit 5bd3a9
  * Don't distribute the configure-generated XlibConf.h in tarballs.
Packit 5bd3a9
Packit 5bd3a9
Version 1.1.1 - 2006-11-30
Packit 5bd3a9
Packit 5bd3a9
The "xcompmgr is hard, let's go releasing" release
Packit 5bd3a9
Packit 5bd3a9
* Fix Bug #9154 and friends, to unbreak xcompmgr:
Packit 5bd3a9
  Always process an event for _XReadEvents, even if an error occurs.
Packit 5bd3a9
  Previously, process_responses (in the wait_for_first_event case called
Packit 5bd3a9
  from _XReadEvents) considered any return from xcb_wait_for_event
Packit 5bd3a9
  sufficient to think it had processed an event. If xcb_wait_for_event
Packit 5bd3a9
  returned an error, and no more events occurred before process_responses
Packit 5bd3a9
  called xcb_poll_for_event, process_responses would try to return with
Packit 5bd3a9
  dpy->head NULL, and would fail an assertion for the _XReadEvents
Packit 5bd3a9
  postcondition. Now, process_responses continues using xcb_wait_for_event
Packit 5bd3a9
  until it gets an event.
Packit 5bd3a9
Packit 5bd3a9
* Bug #9153: Fix access to freed memory.
Packit 5bd3a9
  The fix for bug #8622 introduced a smaller bug where _XReply would
Packit 5bd3a9
  read memory shortly after freeing it. This patch caches the needed
Packit 5bd3a9
  value in a stack-allocated variable before the heap-allocated memory
Packit 5bd3a9
  is freed.
Packit 5bd3a9
Packit 5bd3a9
* libx11 doesn't use inputproto in public headers; don't require it in x11.pc.
Packit 5bd3a9
  Based on a Debian patch.
Packit 5bd3a9
Packit 5bd3a9
* Debian bug #354315: Clarify return value in XGetWindowAttributes man page.
Packit 5bd3a9
  Patch by Debian user Ross Combs.
Packit 5bd3a9
Packit 5bd3a9
Packit 5bd3a9
Version 1.1 - 2006-11-23
Packit 5bd3a9
Packit 5bd3a9
* Add note in man-page that XListFontsWithInfo is not thread-safe.  _XReply
Packit 5bd3a9
  drops the Display lock, so the value of dpy->request may change before
Packit 5bd3a9
  _XReply is called again.  Jamey Sharp discovered this by inspection a few
Packit 5bd3a9
  years ago.
Packit 5bd3a9
Packit 5bd3a9
* Fix Bug #8622, by fixing the response processing order for threaded apps.
Packit 5bd3a9
  process_responses (the common code for _XReply, _XReadEvents, and
Packit 5bd3a9
  _XEventsQueued) now handles responses in order, by adding condition variables
Packit 5bd3a9
  to the list of outstanding requests in dpy->xcb->pending_requests, and
Packit 5bd3a9
  blocking on them when those requests should get processed, to allow _XReply
Packit 5bd3a9
  to process them; if actually called from _XReply, it returns when _XReply's
Packit 5bd3a9
  request should get processed.  _XReply broadcasts on its condition variable
Packit 5bd3a9
  after it has read its reply and re-acquired the display lock.
Packit 5bd3a9
Packit 5bd3a9
* Don't hold the display lock around callbacks to the application. This avoids
Packit 5bd3a9
  recursive locking of the display lock (which triggers an XCB locking
Packit 5bd3a9
  assertion), particularly with emacs.
Packit 5bd3a9
Packit 5bd3a9
* Add xcb-xlib dependency to x11.pc when built against XCB.
Packit 5bd3a9
Packit 5bd3a9
* Allocate the right amount of memory for dpy->lock_fns.  Fixes a crash on
Packit 5bd3a9
  startup with gdk.
Packit 5bd3a9
Packit 5bd3a9
Packit 5bd3a9
Version 1.1 RC2 - 2006-11-02
Packit 5bd3a9
Packit 5bd3a9
Benno Schulenberg:
Packit 5bd3a9
      nls: remove duplicate compose entries (bug #2286)
Packit 5bd3a9
      nls: remove shadowed compose entries (bug #2286)
Packit 5bd3a9
      nls (en_US): remove long compositions that override shorter (bug #2286)
Packit 5bd3a9
Packit 5bd3a9
Caolan McNamara:
Packit 5bd3a9
      XKB geometry: fix leaks in GetKeyboardByName (bug #8099)
Packit 5bd3a9
Packit 5bd3a9
David Nusinow:
Packit 5bd3a9
      Dynamically generate internal manpage section using __libmanpagesuffix__ so that it actually matches the section if you don't use 3X11
Packit 5bd3a9
Packit 5bd3a9
Jamey Sharp:
Packit 5bd3a9
      Add correct Display locking to XKB functions.
Packit 5bd3a9
      XKB bugfix: SyncHandle must be called after UnlockDisplay, not before.
Packit 5bd3a9
      XCB: check for and handle I/O errors in _XGetXCBBuffer.
Packit 5bd3a9
Packit 5bd3a9
Matthias Hopf:
Packit 5bd3a9
      Fix double open of compose file.
Packit 5bd3a9
Packit 5bd3a9
Packit 5bd3a9
Version 1.1 RC1 - 2006-10-06
Packit 5bd3a9
Packit 5bd3a9
This release includes the Xlib/XCB work, which uses XCB as the Xlib transport
Packit 5bd3a9
layer, and allows a client to use both Xlib and XCB on the same connection.
Packit 5bd3a9
This allows clients to transition from Xlib to XCB incrementally.
Packit 5bd3a9
Packit 5bd3a9
Clients which link only to libX11, and do not use XCB, should not notice any
Packit 5bd3a9
differences in this release.  Clients desiring XCB interoperability should
Packit 5bd3a9
additionally #include <X11/Xlib-xcb.h>, link to libX11-xcb, use
Packit 5bd3a9
XGetXCBConnection(dpy) to obtain the underlying XCB connection, and then use
Packit 5bd3a9
XCB functions directly on that connection.
Packit 5bd3a9
Packit 5bd3a9
Note that while a client can issue requests and handle their replies or errors
Packit 5bd3a9
with either Xlib or XCB, only one can own and handle the event queue.  By
Packit 5bd3a9
default, Xlib must own the event queue, for compatibility with legacy Xlib
Packit 5bd3a9
clients.  Clients can use the function XSetEventQueueOwner immediately after
Packit 5bd3a9
XOpenDisplay to let XCB own the event queue instead.  Clients may not call
Packit 5bd3a9
this function after processing any responses, as this will potentially lose
Packit 5bd3a9
responses.
Packit 5bd3a9
Packit 5bd3a9
We expect to have an RC2 release corresponding to the Xorg RC2 schedule, which
Packit 5bd3a9
should include additional internal architecture enhancements, but no
Packit 5bd3a9
user-visible changes.  1.0 final should match RC2.
Packit 5bd3a9
Packit 5bd3a9
Other smaller changes in this release:
Packit 5bd3a9
* correct ChangeLog generation
Packit 5bd3a9
* support running lint and sparse
Packit 5bd3a9
* Autoconf 2.60
Packit 5bd3a9
* fix man page for XUrgencyHint
Packit 5bd3a9
* improve man pages for XGrabButton, XGrabKey, XGetWindowProperty
Packit 5bd3a9
* new locales: as_IN.UTF-8, kn_IN.UTF-8, ml_IN.UTF-8, or_IN.UTF-8,
Packit 5bd3a9
  te_IN.UTF-8, ur_IN.UTF-8
Packit 5bd3a9
* on systems with both UNIXCONN and LOCALCONN, try unix if local fails
Packit 5bd3a9
* fix sparse warnings
Packit 5bd3a9
* ansify static functions
Packit 5bd3a9
Packit 5bd3a9
-- Josh Triplett <josh@freedesktop.org>, Jamey Sharp <jamey@minilop.net>