Commit graph

378 commits

Author SHA1 Message Date
Jeremy C. Reed
f1ed3da9a3 Fix a mutex reference-counting bug.
I was told that some systems have a much more permissive libpthread.
I was asked to commit this. This is from NetBSD's X source.
(I didn't receive any feedback on xorg list for over two weeks
about this.)
2007-08-16 17:39:21 -05:00
Tilman Sauerbeck
ac00a44b48 Bumped version to 1.1.3. 2007-08-01 20:36:03 +02:00
Joerg Sonnenberger
76fae9cba1 Fail properly on errors in recursive make. 2007-07-27 11:15:47 -07:00
Brice Goglin
1a18319b3b Add missing override parameter in XrmCombineDatabase prototype in the manpage
Reported by Arnaud Giersch <arnaud.giersch@iut-bm.univ-fcomte.fr>
in http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=393434
and https://bugs.freedesktop.org/show_bug.cgi?id=9948

Also add the type of the second argument in XrmMergeDatabases.
2007-07-26 23:31:15 +02:00
Brice Goglin
6f0764d4b5 Clarify return value of XGetCommand in case of error in the manpage
Reported by Sean Perry <shalehperry@attbi.com>
in http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=133348
and https://bugs.freedesktop.org/show_bug.cgi?id=9828
2007-07-26 22:53:52 +02:00
Alan Coopersmith
b8bef57342 Include comment/copyright/license for AC_DEFINE_DIR in acinclude.m4 2007-07-25 17:44:06 -07:00
Kean Johnston
590cde811a Reset hostname when falling back from :0 to hostname/localhost:0 as well 2007-07-19 16:44:20 -07:00
Kean Johnston
d334665e61 LOCALCONN fallback changes DisplayString() output, breaks KDE
See <http://lists.freedesktop.org/archives/xorg/2007-July/026443.html>
2007-07-17 16:34:30 -07:00
Olivier Blin
8e76bcf3ca fix XGetMotionEvents arguments order - Fixes bug 11222 2007-06-11 18:32:09 +10:00
Jamey Sharp
c2f88cdf5c Fix locking in _XimGetWindowEventmask.
Now that XFilterEvent drops the Display lock before invoking callback
functions, _XimGetWindowEventmask is called without the lock held. So
when it called _XGetWindowAttributes, a variant of XGetWindowAttributes
that does not lock the Display, Xlib/XCB would assert:

xcb_xlib.c:50: xcb_xlib_unlock: Assertion `c->xlib.lock' failed.

Should fix Gentoo #156367, Ubuntu #87947, Debian #427296. And others?
2007-06-10 16:19:59 -07:00
Jamey Sharp
65f0ab5d46 Move security fixes to the top of NEWS, and fix spacing.
Commit by Josh Triplett and Jamey Sharp.
2007-06-03 21:41:47 -07:00
Jamey Sharp
a549a258b8 Add NEWS item for bugfix in commit e2c1d788d1.
Commit by Josh Triplett and Jamey Sharp
2007-06-03 21:32:34 -07:00
Jamey Sharp
5123b77a3d Xlib/XCB: Inline and simplify handle_event, since only process_responses calls it now.
Commit by Josh Triplett and Jamey Sharp.
2007-06-03 21:24:54 -07:00
Jamey Sharp
582ca690ea Xlib/XCB: Fix _XReadEvents to always enqueue a new event, even if an error occurs
Commit c337f9de7c broke the invariant that
_XReadEvents always enqueues at least one event even if an error occurred,
because the one call to xcb_wait_for_event would then return an error, not an
event, and nothing else ensured that process_responses would obtain an event.
Fix this by reverting most of c337f9de7c and
f417570735 and implementing the correct fix.  In
process_responses, wait_for_first_event now serves as a flag, cleared when
actually handling an event.

Commit by Josh Triplett and Jamey Sharp.
2007-06-03 20:59:12 -07:00
Jamey Sharp
e2c1d788d1 Xlib/XCB: Only remove pending_requests when there are provably no more responses. 2007-06-03 17:33:23 -07:00
Josh Triplett
7a6dbd4b07 Bump version number to 1.1.2, and add NEWS entry for 1.1.2
Signed-off-by: Josh Triplett <josh@freedesktop.org>
2007-06-03 15:39:57 -07:00
Josh Triplett
416f38f2e6 Revert "Revert "include: don't distribute XlibConf.h""
This reverts commit 79fa3d8070.

Re-revert the XlibConf.h change, which prevented distribution, not
installation.
2007-06-03 12:13:44 -07:00
Josh Triplett
79fa3d8070 Revert "include: don't distribute XlibConf.h"
This reverts commit c9e28e05ae.

The installed XlibInt.h includes XlibConf.h , so libX11 should ship
XlibConf.h.  (Commit c9e28e05ae didn't actually
prevent automake from shipping XlibConf.h, because it used
nodist_x11include_HEADERS rather than nodist_HEADERS.)
2007-06-02 22:05:16 -07:00
Jamey Sharp
f417570735 Xlib/XCB: inline wait_or_poll_for_event, which now had only one caller.
Commit by Josh Triplett and Jamey Sharp.
2007-06-02 17:59:15 -07:00
Jamey Sharp
c337f9de7c Xlib/XCB: Ensure _XReadEvents reads at least one new event and blocks for exactly one event.
Commit by Jamey Sharp and Josh Triplett.
2007-06-02 17:46:41 -07:00
Jamey Sharp
7f66c897f0 Update _XReply's copy of _XCBUnlockDisplay's guts.
We introduced this bug in 6b81cbbedf.

Also add a comment in _XCBUnlockDisplay to discourage this problem from
respawning.

Commit by Josh Triplett and Jamey Sharp.
2007-06-02 16:45:40 -07:00
Jamey Sharp
740ead2351 Xlib/XCB: Avoid re-crashing after _XIOError.
Commit by Josh Triplett and Jamey Sharp.
2007-06-02 16:01:01 -07:00
Jamey Sharp
6b81cbbedf Hold XCB's Xlib lock even when only the user lock (XLockDisplay) is held.
An Xlib client can query Display state, such as with NextRequest, while
it holds only the Xlib user lock (between XLockDisplay and
XUnlockDisplay), so XCB requests in other threads should be blocked when
the Xlib user lock is held.

We acquire the lock even when XInitThreads was not called, so that pure
XCB code can use multiple threads even in an otherwise single-threaded
Xlib application.

Commit by Josh Triplett and Jamey Sharp.
2007-06-02 12:54:45 -07:00
Jamey Sharp
95523387d6 Allow re-entrant Xlib calls from _XIOError.
Some libraries try to clean up X resources from atexit handlers, _fini,
or C++ destructors. To make these work, the Display lock should be
downgraded to a user lock (as in XLockDisplay) before calling exit(3).
This blocks Xlib calls from threads other than the one calling exit(3)
while still allowing the exit handlers to call Xlib.

This assumes that the thread calling exit will call any atexit handlers.
If this does not hold, then an alternate solution would involve
registering an atexit handler to take over the lock, which would only
assume that the same thread calls all the atexit handlers.

Commit by Josh Triplett and Jamey Sharp.
2007-06-02 11:57:39 -07:00
Tilman Sauerbeck
91b02b8064 More constification. 2007-05-17 19:07:34 +02:00
Tilman Sauerbeck
a4f3841940 Constified composite text charset table. 2007-05-17 00:29:43 +02:00
Tilman Sauerbeck
0581c0aa60 Have the compiler fill in hexTable so we don't have to do it at runtime. 2007-05-16 23:19:22 +02:00
Tilman Sauerbeck
0e8d9ca47d More constification. 2007-05-16 19:36:23 +02:00
Tilman Sauerbeck
6d2bed8f04 Constify and clean up token table. 2007-05-16 19:18:20 +02:00
Tilman Sauerbeck
6c508eab5d Constified more tables. 2007-05-16 18:24:42 +02:00
Tilman Sauerbeck
e699c4231c Constified error list. 2007-05-16 18:01:23 +02:00
Jan Willem Stumpel
c76d30253f Update el_GR.UTF-8/Compose.pre to match changes in xkeyboard-config cvs
Cf:

  https://bugs.freedesktop.org/show_bug.cgi?id=10851
  https://bugs.freedesktop.org/show_bug.cgi?id=10824
  http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=386385

The greek keyboard definition was changed to replace dead_horn and
dead_ogonek with U0313 COMBINING COMMA ABOVE (aka Psili) and U0314
COMBINING REVERSED COMMA ABOVE (aka Dasia).

This patch modifies the Greek Compose.pre to match.

It is generated by the script Jan Willem Stumpel <jstumpel@planet.nl>
posted to 386385@bugs.debian.org:

#!/usr/bin/perl
while (<>) {
  print $_;
  if (/dead_horn/) {
    s/dead_horn/U0313/;
    print $_;
  }
  elsif (/dead_ogonek/) {
    s/dead_ogonek/U0314/;
    print $_;
  }
}
2007-05-04 12:00:49 -07:00
Magnus Kessler
a48386ce6b Switched function definitions from K&R to ANSI style. 2007-05-01 15:20:08 +02:00
Tilman Sauerbeck
605d357074 Tweaked configure output about the man pages suffix. 2007-05-01 14:47:03 +02:00
Alan Coopersmith
9824b40d2a Fix typo in nroff macro in XkbAddGeomOverlayKey.man 2007-04-28 00:42:18 -07:00
Alan Coopersmith
f93849dcc6 Protect C comments and #defines in XKB man pages from being mangled by cpp 2007-04-28 00:30:55 -07:00
Alan Coopersmith
f2f27d4763 Add Makefile to process/install XKB man pages 2007-04-28 00:14:50 -07:00
Dennis Arellano
d9954c6f6f Add man pages for XKB API's
Man pages originally written for X11R6.4 integration to Solaris 7 11/99
Sun bug id 4258344: Add new XKB API manpages for 6.4 upgrade
<http://bugs.opensolaris.org/bugdatabase/view_bug.do?bug_id=4258344>

(Volunteer needed to convert prototypes in man pages to ANSI C style...)
2007-04-27 23:50:45 -07:00
Tilman Sauerbeck
f640a49b5e Markup tweak for XOpenIM. 2007-04-20 18:39:59 +02:00
Julien Cristau
e972b0bb25 Bug #9695: Fixed a few argument types in the XOpenIM manpage. 2007-04-20 18:35:09 +02:00
Julien Cristau
b4e2276f32 Bug #9697: Fixed documentation of XVisualInfo struct.
The "depth" member was said to be unsigned int, but it's signed.
2007-04-20 18:28:52 +02:00
Julien Cristau
4068f3dae0 Bug #9696: refer to XDefineCursor() instead of XDefineCusor(). 2007-04-20 16:41:21 +02:00
Tilman Sauerbeck
603c2f88d4 Use unistd.h to get getresuid() and friends.
This works since we now have _GNU_SOURCE defined.
2007-04-07 14:42:55 +02:00
Tilman Sauerbeck
0300f295bb Bug #10562: Define _GNU_SOURCE on glibc systems. 2007-04-07 14:27:12 +02:00
Tilman Sauerbeck
a225a0be48 For nls/*.pre, allow people to comment lines by starting them with '##'.
This fixes a bunch of cpp warnings from nls/en_US.UTF-8/Compose.pre.
Fixing that file would have been a larger diff, and using ## may be
nicer to use anyway.
2007-04-06 12:46:25 +02:00
Tilman Sauerbeck
1c75a94790 Bug #10475: Fixed lots of char*/const char* mixups.
I didn't fix all of them, as that would require touching
public headers.
2007-04-06 11:59:31 +02:00
Matthias Hopf
680dd50193 Fix 64bit issues with reallocation. 2007-04-05 11:54:26 +02:00
Tilman Sauerbeck
4d38aeaca4 Fixed a few warnings. 2007-04-04 18:41:18 +02:00
Matthieu Herrb
7dc7ef398b Multiple integer overflows in the XGetPixel() and XInitImage functions
CVE-2007-1667
2007-04-03 15:39:52 +02:00
David Baron
0284b14434 Bug #7703: Fixed XSetSizeHints() et al wrt use of uninitialized data.
Now only those fields of the respective hint struct are set that
are actually valid in the input data.
The changed functions are:
XSetSizeHints(), XSetWMHints() and XSetWMSizeHints().
2007-03-30 17:07:46 +02:00