Compiler warning flags should be explicitly set in the makefile
rather than being merged with other packages compiler flags.
Reviewed-by: Dan Nicholson <dbn.lists@gmail.com>
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
With the release of XFree86 4.4 an inclusion system of compose files was
added to Xlib to allow inclusion of the default compose file (with %L),
any compose files from user’s home directory (with %H), or a compose
file with a hard coded path¹. However, even today including system level
compose files is not possible in a platform independent manner although
the machinery for including compose files and overriding previously
defined compositions is already in place.
With the ability to include system level compose files one could greatly
reduce the need for compose file rule duplication and the work needed to
propagate changes in one compose file to others. For example, currently
the Finnish compose file fi_FI.UTF-8 weights over 5000 lines² but it
is almost identical with en_US.UTF-8 except for perhaps half a dozen
compositions.
This commit allows one to include system level compose files with the
following kind of syntax:
include "%S/en_US.UTF-8/Compose"
1] http://www.xfree86.org/4.4.0/RELNOTES5.html#42
2] http://cgit.freedesktop.org/xorg/lib/libX11/tree/nls/fi_FI.UTF-8/Compose.pre
Signed-off-by: Marko Myllynen <myllynen@redhat.com>
Signed-off-by: James Cloos <cloos@jhcloos.com>
- In set_fontset_extents, check font_data is not NULL before running
loop that may increment it to a non-NULL invalid pointer.
- Make sure get_rotate_fontname counts the final field
Fixes OpenSolaris bug 6913809: X application dumps core in ja_JP.UTF-8 locale
<http://bugs.opensolaris.org/bugdatabase/view_bug.do?bug_id=6913809>
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
On some build systems, CPPFLAGS is set to "-I/some/prefix/include". If older
X11 headers are in /some/prefix/include, they will be preferred over the
shipped headers. This corrects that problem.
On th_TH.UTF-8 locale, Thai XIM rejects all combining characters for GTK+ apps
that use X Input Method.
This is because GTK+ imxim immodule passes surrounding text in locale encoding,
which is UTF-8 for UTF-8 locales. But current Thai XIM in Xlib assumes the
multi-byte StringConversionText response for the StringConversionCallback to
always be TIS-620, by retrieving a single byte and using it as-is.
If the Thai XIM tries to convert the multi-byte text based on locale codeset
before using it, it will work again.
X.Org But 12759 <http://bugs.freedesktop.org/show_bug.cgi?id=12759>
Signed-off-by: Theppitak Karoonboonyanan <thep@linux.thai.net>
Signed-off-by: Julien Cristau <jcristau@debian.org>
The Thai XIM component in libx11 activated on 'th*' locales normally filters
input sequence according to orthographic rules. However, when NumLock/CapsLock
is on, this stops working. All sequences are passed through.
This is caused by missing masks in _XimThaiFilter(), which normally screens out
certain special keys from entering orthographic rules. Unfortunately, this
included events with NumLock/CapsLock on. Negating the masks from the check
allows the events to be tested by the rules.
X.Org Bug 12517 <http://bugs.freedesktop.org/show_bug.cgi?id=12517>
Signed-off-by: Theppitak Karoonboonyanan <thep@linux.thai.net>
Signed-off-by: Julien Cristau <jcristau@debian.org>
Author is Peter Breitenlohner <peb@mppmu.mpg.de>
Bug #17946, attachment #19443
This patch avoids the gcc warning
../../../../libX11-1.1.5/modules/im/ximcp/imDefLkup.c:223: warning: passing arg 1 of `_XimProcSyncReply' from incompatible pointer type
(same as already done at other places)
BTW: what is the difference between XIM (the type of ic->core.im)
and Xim ?
Author is Peter Breitenlohner <peb@mppmu.mpg.de>
Bug #17946, attachment #19441
This patch avoids the two gcc warnings
../../../../libX11-1.1.5/modules/im/ximcp/imRm.c:413: warning: assignment discards qualifiers from pointer target type
../../../../libX11-1.1.5/modules/im/ximcp/imRm.c:450: warning: assignment discards qualifiers from pointer target type
Note, that this as a rather crude fix of the problem (and it is really a
shame to cast name_table to non-const).
The right solution would be to declare XIMValuesList.supported_values
(in include/X11/Xlib.h) as 'const char **' (or '_Xconst char **').
This will, however, require extensive modifications in various places.
Only convert to use "ansi prototypes" the functions warned from
compilation with "./autogen.sh --prefix=/usr", on a Linux computer.
Also, only address "trivial" compiler warning fixes in this commit.
The new .gitignore is the output of a command like:
% find . -name .gitignore -exec cat {} \; | sort | uniq
and only the toplevel .gitignore file was kept.
For network transports, there's enough delay in the network layer
already without adding more. For local transports, just hurry up
and fail if the server isn't there.
When looking at Thai input methods, make sure XMODIFIERS is checked
before jumping straight into built-in Thai processing, so external XIM
servers such as SCIM can be used with Thai.
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?
Clean up conditionals for XKB, XCMS, XLOCALEDIR
Create new lib directory for locale modules in ${X11_LIBDIR}/locale/lib. Add this to the default XLOCALEDIR search path.
Create separate X11_LOCALEDATADIR variable pointing at ${datadir}/X11/locale for installing locale data.
Split out xcms, xkb, xlibi18n sources from main xlib bits so they can be conditionally included more easily. Lots of source files have been moved with this step; the result seems like it might be easier to maintain.
Display message at end of configure script with selected options.
Fix manual building with cpp to add -traditional in cpprules.in. This isn't conditionalized at all, so it will break on systems not using GNU cpp.
- For Xcomposite and Xdamage, don't link the build system out of the xc tree
- Link the public X11 headers into their own directory
- Add links to XKeysymDB and XErrorDB
- Add links to all the Xlib man pages
- Add links to the lcUniConv subdirectory
- Conditionally include config.h in Xlib source