Hello community, here is the log from the commit of package libXext for openSUSE:Factory checked in at 2014-07-26 11:27:48 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/libXext (Old) and /work/SRC/openSUSE:Factory/.libXext.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libXext" Changes: -------- --- /work/SRC/openSUSE:Factory/libXext/libXext.changes 2013-06-05 11:56:10.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.libXext.new/libXext.changes 2014-07-26 11:27:49.000000000 +0200 @@ -1,0 +2,13 @@ +Thu Jul 24 13:33:56 UTC 2014 - [email protected] + +- added baselibs.conf as source to specfile + +------------------------------------------------------------------- +Thu Jul 24 13:18:50 UTC 2014 - [email protected] + +- Update to version 1.3.3 + * Time for a release before the accumulated patches are old + enough to vote. Two new requirements: libX11 1.6 and a C89 + preprocessor. + +------------------------------------------------------------------- Old: ---- libXext-1.3.2.tar.bz2 New: ---- libXext-1.3.3.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libXext.spec ++++++ --- /var/tmp/diff_new_pack.hqoDDH/_old 2014-07-26 11:27:51.000000000 +0200 +++ /var/tmp/diff_new_pack.hqoDDH/_new 2014-07-26 11:27:51.000000000 +0200 @@ -1,7 +1,7 @@ # # spec file for package libXext # -# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -18,7 +18,7 @@ Name: libXext %define lname libXext6 -Version: 1.3.2 +Version: 1.3.3 Release: 0 Summary: Common extensions to the X11 protocol License: MIT @@ -28,6 +28,7 @@ #Git-Clone: git://anongit.freedesktop.org/xorg/lib/libXext #Git-Web: http://cgit.freedesktop.org/xorg/lib/libXext/ Source: http://xorg.freedesktop.org/releases/individual/lib/%{name}-%{version}.tar.bz2 +Source1: baselibs.conf BuildRoot: %{_tmppath}/%{name}-%{version}-build #git#BuildRequires: autoconf >= 2.60, automake, libtool BuildRequires: fdupes ++++++ libXext-1.3.2.tar.bz2 -> libXext-1.3.3.tar.bz2 ++++++ ++++ 16242 lines of diff (skipped) ++++ retrying with extended exclude list diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libXext-1.3.2/ChangeLog new/libXext-1.3.3/ChangeLog --- old/libXext-1.3.2/ChangeLog 2013-05-31 23:39:36.000000000 +0200 +++ new/libXext-1.3.3/ChangeLog 2014-07-24 03:40:32.000000000 +0200 @@ -1,3 +1,92 @@ +commit efdcbb7634501e1117d422636a0a75d7ea84b16b +Author: Peter Hutterer <[email protected]> +Date: Thu Jul 24 01:30:38 2014 +1000 + + libXext 1.3.3 + + Signed-off-by: Peter Hutterer <[email protected]> + +commit 11aad96bd689d54156064d2e81213dc827a689d1 +Author: Keith Packard <[email protected]> +Date: Thu Mar 6 14:56:17 2014 -0800 + + Xge: remove warning messages about missing Xge extension event translations + + When mixing Xlib and xcb, it's quite possible for some events to be + received for xcb-only extensions, which will subsequently not be + translatable by the Xge WireToEvent/EventToWire hooks + + Signed-off-by: Keith Packard <[email protected]> + Reviewed-by: Eric Anholt <[email protected]> + +commit dde40e03c10808b964dc1d6a7eb48156dd5ce4a2 +Author: Alan Coopersmith <[email protected]> +Date: Sat Mar 8 20:09:46 2014 -0800 + + XeviGetVisualInfo: Free & clear *evi_return, not evi_return pointer + + evi_return is passed in as a pointer to a location into which + XeviGetVisualInfo is expected to write a pointer to the memory + it allocated for the returned structures. If we're failing and + bailing out, we need to dispose of the pointer we set, not the + one passed into us (which the caller may have put on the stack + or allocated as part of a larger structure). + + Flagged by cppcheck 1.64: + [lib/libXext/src/XEVI.c:182] -> [lib/libXext/src/XEVI.c:186]: + (warning) Possible null pointer dereference: evi_return - otherwise it + is redundant to check it against null. + + Signed-off-by: Alan Coopersmith <[email protected]> + +commit d5447c0156f556114dbf97d6064c0c7b0fcd5f70 +Author: Nathan Kidd <[email protected]> +Date: Fri Jan 17 13:40:07 2014 +1000 + + Stricter event error checking + + A malicious X server claiming to not support GE but sending a GE would + SEGV the client (always a NULL derefrence). Possible since d1c93500. + + (Also guard the EventToWire case so it's harder to shoot yourself in the + foot.) + + Signed-off-by: Nathan Kidd <[email protected]> + Reviewed-by: Peter Hutterer <[email protected]> + Signed-off-by: Peter Hutterer <[email protected]> + +commit bb24f2970f2e425f4df90c9b73d078ad15a73fbb +Author: Alan Coopersmith <[email protected]> +Date: Thu Nov 7 16:31:16 2013 -0800 + + Remove fallback for _XEatDataWords, require libX11 1.6 for it + + _XEatDataWords was orignally introduced with the May 2013 security + patches, and in order to ease the process of delivering those, + fallback versions of _XEatDataWords were included in the X extension + library patches so they could be applied to older versions that didn't + have libX11 1.6 yet. Now that we're past that hurdle, we can drop + the fallbacks and just require libX11 1.6 for building new versions + of the extension libraries. + + Signed-off-by: Alan Coopersmith <[email protected]> + +commit 7378d4bdbd33ed49ed6cfa5c4f73d7527982aab4 +Author: Alan Coopersmith <[email protected]> +Date: Mon Jun 24 22:55:18 2013 -0700 + + Require ANSI C89 pre-processor, drop pre-C89 token pasting support + + Signed-off-by: Alan Coopersmith <[email protected]> + +commit 230a1dc356266afb206c98e47ee72e8fca0948e2 +Author: Alan Coopersmith <[email protected]> +Date: Sat Jun 22 10:56:53 2013 -0700 + + Replace sprintf with snprintf when looking up extension error strings + + Signed-off-by: Alan Coopersmith <[email protected]> + commit d8366afbb0d2e4fbb1e419b1187f490522270bea Author: Alan Coopersmith <[email protected]> Date: Fri May 31 14:34:58 2013 -0700 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libXext-1.3.2/INSTALL new/libXext-1.3.3/INSTALL --- old/libXext-1.3.2/INSTALL 2013-05-31 23:39:36.000000000 +0200 +++ new/libXext-1.3.3/INSTALL 2014-07-24 03:40:32.000000000 +0200 @@ -1,11 +1,13 @@ Installation Instructions ************************* -Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005, -2006, 2007, 2008 Free Software Foundation, Inc. +Copyright (C) 1994-1996, 1999-2002, 2004-2011 Free Software Foundation, +Inc. - This file is free documentation; the Free Software Foundation gives -unlimited permission to copy, distribute and modify it. + Copying and distribution of this file, with or without modification, +are permitted in any medium without royalty provided the copyright +notice and this notice are preserved. This file is offered as-is, +without warranty of any kind. Basic Installation ================== @@ -13,7 +15,11 @@ Briefly, the shell commands `./configure; make; make install' should configure, build, and install this package. The following more-detailed instructions are generic; see the `README' file for -instructions specific to this package. +instructions specific to this package. Some packages provide this +`INSTALL' file but do not implement all of the features documented +below. The lack of an optional feature in a given package is not +necessarily a bug. More recommendations for GNU packages can be found +in *note Makefile Conventions: (standards)Makefile Conventions. The `configure' shell script attempts to guess correct values for various system-dependent variables used during compilation. It uses @@ -42,7 +48,7 @@ you want to change it or regenerate `configure' using a newer version of `autoconf'. -The simplest way to compile this package is: + The simplest way to compile this package is: 1. `cd' to the directory containing the package's source code and type `./configure' to configure the package for your system. @@ -53,12 +59,22 @@ 2. Type `make' to compile the package. 3. Optionally, type `make check' to run any self-tests that come with - the package. + the package, generally using the just-built uninstalled binaries. 4. Type `make install' to install the programs and any data files and - documentation. + documentation. When installing into a prefix owned by root, it is + recommended that the package be configured and built as a regular + user, and only the `make install' phase executed with root + privileges. + + 5. Optionally, type `make installcheck' to repeat any self-tests, but + this time using the binaries in their final installed location. + This target does not install anything. Running this target as a + regular user, particularly if the prior `make install' required + root privileges, verifies that the installation completed + correctly. - 5. You can remove the program binaries and object files from the + 6. You can remove the program binaries and object files from the source code directory by typing `make clean'. To also remove the files that `configure' created (so you can compile the package for a different kind of computer), type `make distclean'. There is @@ -67,8 +83,15 @@ all sorts of other programs in order to regenerate files that came with the distribution. - 6. Often, you can also type `make uninstall' to remove the installed - files again. + 7. Often, you can also type `make uninstall' to remove the installed + files again. In practice, not all packages have tested that + uninstallation works correctly, even though it is required by the + GNU Coding Standards. + + 8. Some packages, particularly those that use Automake, provide `make + distcheck', which can by used by developers to test that all other + targets like `make install' and `make uninstall' work correctly. + This target is generally not run by end users. Compilers and Options ===================== @@ -93,7 +116,8 @@ own directory. To do this, you can use GNU `make'. `cd' to the directory where you want the object files and executables to go and run the `configure' script. `configure' automatically checks for the -source code in the directory that `configure' is in and in `..'. +source code in the directory that `configure' is in and in `..'. This +is known as a "VPATH" build. With a non-GNU `make', it is safer to compile the package for one architecture at a time in the source code directory. After you have @@ -120,7 +144,8 @@ By default, `make install' installs the package's commands under `/usr/local/bin', include files under `/usr/local/include', etc. You can specify an installation prefix other than `/usr/local' by giving -`configure' the option `--prefix=PREFIX'. +`configure' the option `--prefix=PREFIX', where PREFIX must be an +absolute file name. You can specify separate installation prefixes for architecture-specific files and architecture-independent files. If you @@ -131,15 +156,46 @@ In addition, if you use an unusual directory layout you can give options like `--bindir=DIR' to specify different values for particular kinds of files. Run `configure --help' for a list of the directories -you can set and what kinds of files go in them. +you can set and what kinds of files go in them. In general, the +default for these options is expressed in terms of `${prefix}', so that +specifying just `--prefix' will affect all of the other directory +specifications that were not explicitly provided. + + The most portable way to affect installation locations is to pass the +correct locations to `configure'; however, many packages provide one or +both of the following shortcuts of passing variable assignments to the +`make install' command line to change installation locations without +having to reconfigure or recompile. + + The first method involves providing an override variable for each +affected directory. For example, `make install +prefix=/alternate/directory' will choose an alternate location for all +directory configuration variables that were expressed in terms of +`${prefix}'. Any directories that were specified during `configure', +but not in terms of `${prefix}', must each be overridden at install +time for the entire installation to be relocated. The approach of +makefile variable overrides for each directory variable is required by +the GNU Coding Standards, and ideally causes no recompilation. +However, some platforms have known limitations with the semantics of +shared libraries that end up requiring recompilation when using this +method, particularly noticeable in packages that use GNU Libtool. + + The second method involves providing the `DESTDIR' variable. For +example, `make install DESTDIR=/alternate/directory' will prepend +`/alternate/directory' before all installation names. The approach of +`DESTDIR' overrides is not required by the GNU Coding Standards, and +does not work on platforms that have drive letters. On the other hand, +it does better at avoiding recompilation issues, and works well even +when some directory options were not specified in terms of `${prefix}' +at `configure' time. + +Optional Features +================= If the package supports it, you can cause programs to be installed with an extra prefix or suffix on their names by giving `configure' the option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'. -Optional Features -================= - Some packages pay attention to `--enable-FEATURE' options to `configure', where FEATURE indicates an optional part of the package. They may also pay attention to `--with-PACKAGE' options, where PACKAGE @@ -152,6 +208,13 @@ you can use the `configure' options `--x-includes=DIR' and `--x-libraries=DIR' to specify their locations. + Some packages offer the ability to configure how verbose the +execution of `make' will be. For these packages, running `./configure +--enable-silent-rules' sets the default to minimal output, which can be +overridden with `make V=1'; while running `./configure +--disable-silent-rules' sets the default to verbose, which can be +overridden with `make V=0'. + Particular systems ================== @@ -159,10 +222,15 @@ CC is not installed, it is recommended to use the following options in order to use an ANSI C compiler: - ./configure CC="cc -Ae" + ./configure CC="cc -Ae -D_XOPEN_SOURCE=500" and if that doesn't work, install pre-built binaries of GCC for HP-UX. + HP-UX `make' updates targets which have the same time stamps as +their prerequisites, which makes it generally unusable when shipped +generated files such as `configure' are involved. Use GNU `make' +instead. + On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot parse its `<wchar.h>' header file. The option `-nodtk' can be used as a workaround. If GNU CC is not installed, it is therefore recommended @@ -174,6 +242,16 @@ ./configure CC="cc -nodtk" + On Solaris, don't put `/usr/ucb' early in your `PATH'. This +directory contains several dysfunctional programs; working variants of +these programs are available in `/usr/bin'. So, if you need `/usr/ucb' +in your `PATH', put it _after_ `/usr/bin'. + + On Haiku, software installed for all users goes in `/boot/common', +not `/usr/local'. It is recommended to use the following options: + + ./configure --prefix=/boot/common + Specifying the System Type ========================== @@ -189,7 +267,8 @@ where SYSTEM can have one of these forms: - OS KERNEL-OS + OS + KERNEL-OS See the file `config.sub' for the possible values of each field. If `config.sub' isn't included in this package, then this package doesn't @@ -277,7 +356,7 @@ `configure' can determine that directory automatically. `--prefix=DIR' - Use DIR as the installation prefix. *Note Installation Names:: + Use DIR as the installation prefix. *note Installation Names:: for more details, including other options available for fine-tuning the installation locations. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libXext-1.3.2/config.h.in new/libXext-1.3.3/config.h.in --- old/libXext-1.3.2/config.h.in 2013-05-31 23:35:18.000000000 +0200 +++ new/libXext-1.3.3/config.h.in 2014-07-23 17:34:13.000000000 +0200 @@ -30,9 +30,6 @@ /* Define to 1 if you have the <unistd.h> header file. */ #undef HAVE_UNISTD_H -/* Define to 1 if you have the `_XEatDataWords' function. */ -#undef HAVE__XEATDATAWORDS - /* Define to the sub-directory in which libtool stores uninstalled libraries. */ #undef LT_OBJDIR diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libXext-1.3.2/configure.ac new/libXext-1.3.3/configure.ac --- old/libXext-1.3.2/configure.ac 2013-05-31 23:35:08.000000000 +0200 +++ new/libXext-1.3.3/configure.ac 2014-07-23 17:30:27.000000000 +0200 @@ -1,7 +1,7 @@ # Initialize Autoconf AC_PREREQ([2.60]) -AC_INIT([libXext], [1.3.2], +AC_INIT([libXext], [1.3.3], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], [libXext]) AC_CONFIG_SRCDIR([Makefile.am]) AC_CONFIG_HEADERS([config.h]) @@ -36,13 +36,7 @@ AC_SUBST(XEXT_SOREV) # Obtain compiler/linker options for depedencies -PKG_CHECK_MODULES(XEXT, [xproto >= 7.0.13] [x11 >= 1.1.99.1] [xextproto >= 7.1.99]) - -# Check for _XEatDataWords function that may be patched into older Xlib releases -SAVE_LIBS="$LIBS" -LIBS="$XEXT_LIBS" -AC_CHECK_FUNCS([_XEatDataWords]) -LIBS="$SAVE_LIBS" +PKG_CHECK_MODULES(XEXT, [xproto >= 7.0.13] [x11 >= 1.6] [xextproto >= 7.1.99]) # Allow checking code with lint, sparse, etc. XORG_WITH_LINT diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libXext-1.3.2/include/X11/extensions/extutil.h new/libXext-1.3.3/include/X11/extensions/extutil.h --- old/libXext-1.3.2/include/X11/extensions/extutil.h 2013-05-31 23:35:08.000000000 +0200 +++ new/libXext-1.3.3/include/X11/extensions/extutil.h 2014-01-20 00:34:26.000000000 +0100 @@ -178,7 +178,7 @@ code -= codes->first_error; \ if (code >= 0 && code < nerr) { \ char tmp[256]; \ - sprintf (tmp, "%s.%d", extname, code); \ + snprintf (tmp, sizeof(tmp), "%s.%d", extname, code); \ XGetErrorDatabaseText (dpy, "XProtoError", tmp, errl[code], buf, n); \ return buf; \ } \ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libXext-1.3.2/include/X11/extensions/multibuf.h new/libXext-1.3.3/include/X11/extensions/multibuf.h --- old/libXext-1.3.2/include/X11/extensions/multibuf.h 2013-05-31 23:35:08.000000000 +0200 +++ new/libXext-1.3.3/include/X11/extensions/multibuf.h 2014-01-20 00:34:26.000000000 +0100 @@ -30,15 +30,9 @@ #include <X11/extensions/multibufconst.h> -#if !defined(UNIXCPP) || defined(ANSICPP) #define MbufGetReq(name,req,info) GetReq (name, req); \ req->reqType = info->codes->major_opcode; \ req->mbufReqType = X_##name; -#else -#define MbufGetReq(name,req,info) GetReq (name, req); \ - req->reqType = info->codes->major_opcode; \ - req->mbufReqType = X_/**/name; -#endif /* * Extra definitions that will only be needed in the client diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libXext-1.3.2/src/Makefile.am new/libXext-1.3.3/src/Makefile.am --- old/libXext-1.3.2/src/Makefile.am 2013-05-31 23:35:08.000000000 +0200 +++ new/libXext-1.3.3/src/Makefile.am 2014-01-20 00:34:26.000000000 +0100 @@ -12,7 +12,6 @@ libXext_la_LIBADD = $(XEXT_LIBS) libXext_la_SOURCES = \ - eat.h \ DPMS.c \ MITMisc.c \ XAppgroup.c \ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libXext-1.3.2/src/XEVI.c new/libXext-1.3.3/src/XEVI.c --- old/libXext-1.3.2/src/XEVI.c 2013-05-31 23:35:08.000000000 +0200 +++ new/libXext-1.3.3/src/XEVI.c 2014-07-24 00:09:30.000000000 +0200 @@ -31,7 +31,6 @@ #include <X11/extensions/extutil.h> #include <X11/Xutil.h> #include <limits.h> -#include "eat.h" static XExtensionInfo *xevi_info;/* needs to move to globals.c */ static const char *xevi_extension_name = EVINAME; @@ -184,8 +183,10 @@ _XEatDataWords(dpy, rep.length); UnlockDisplay(dpy); SyncHandle(); - if (evi_return) - Xfree(evi_return); + if (*evi_return) { + Xfree(*evi_return); + *evi_return = NULL; + } if (temp_xInfo) Xfree(temp_xInfo); if (temp_conflict) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libXext-1.3.2/src/XMultibuf.c new/libXext-1.3.3/src/XMultibuf.c --- old/libXext-1.3.2/src/XMultibuf.c 2013-05-31 23:35:08.000000000 +0200 +++ new/libXext-1.3.3/src/XMultibuf.c 2014-01-20 00:34:26.000000000 +0100 @@ -34,7 +34,6 @@ #include <X11/extensions/extutil.h> #include <X11/extensions/multibufproto.h> #include <X11/extensions/multibuf.h> -#include "eat.h" static XExtensionInfo _multibuf_info_data; static XExtensionInfo *multibuf_info = &_multibuf_info_data; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libXext-1.3.2/src/XSecurity.c new/libXext-1.3.3/src/XSecurity.c --- old/libXext-1.3.2/src/XSecurity.c 2013-05-31 23:35:08.000000000 +0200 +++ new/libXext-1.3.3/src/XSecurity.c 2014-01-20 00:34:26.000000000 +0100 @@ -33,7 +33,6 @@ #include <X11/extensions/extutil.h> #include <X11/extensions/securproto.h> #include <X11/extensions/security.h> -#include "eat.h" static XExtensionInfo _Security_info_data; static XExtensionInfo *Security_info = &_Security_info_data; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libXext-1.3.2/src/XShape.c new/libXext-1.3.3/src/XShape.c --- old/libXext-1.3.2/src/XShape.c 2013-05-31 23:35:08.000000000 +0200 +++ new/libXext-1.3.3/src/XShape.c 2014-01-20 00:34:26.000000000 +0100 @@ -36,7 +36,6 @@ #include <X11/extensions/shape.h> #include <X11/extensions/shapeproto.h> #include <limits.h> -#include "eat.h" static XExtensionInfo _shape_info_data; static XExtensionInfo *shape_info = &_shape_info_data; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libXext-1.3.2/src/XSync.c new/libXext-1.3.3/src/XSync.c --- old/libXext-1.3.2/src/XSync.c 2013-05-31 23:35:08.000000000 +0200 +++ new/libXext-1.3.3/src/XSync.c 2014-01-20 00:49:23.000000000 +0100 @@ -60,7 +60,6 @@ #include <X11/extensions/sync.h> #include <X11/extensions/syncproto.h> #include <limits.h> -#include "eat.h" static XExtensionInfo _sync_info_data; static XExtensionInfo *sync_info = &_sync_info_data; @@ -189,7 +188,7 @@ code -= codes->first_error; if (code >= 0 && code < nerr) { char tmp[256]; - sprintf (tmp, "%s.%d", sync_extension_name, code); + snprintf (tmp, sizeof(tmp), "%s.%d", sync_extension_name, code); XGetErrorDatabaseText (dpy, "XProtoError", tmp, sync_error_list[code], buf, n); return buf; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libXext-1.3.2/src/Xcup.c new/libXext-1.3.3/src/Xcup.c --- old/libXext-1.3.2/src/Xcup.c 2013-05-31 23:35:08.000000000 +0200 +++ new/libXext-1.3.3/src/Xcup.c 2014-01-20 00:34:26.000000000 +0100 @@ -37,7 +37,6 @@ #include <X11/extensions/Xext.h> #include <X11/extensions/extutil.h> #include <limits.h> -#include "eat.h" static XExtensionInfo _xcup_info_data; static XExtensionInfo *xcup_info = &_xcup_info_data; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libXext-1.3.2/src/Xdbe.c new/libXext-1.3.3/src/Xdbe.c --- old/libXext-1.3.2/src/Xdbe.c 2013-05-31 23:35:08.000000000 +0200 +++ new/libXext-1.3.3/src/Xdbe.c 2014-01-20 00:34:26.000000000 +0100 @@ -40,7 +40,6 @@ #include <X11/extensions/Xdbe.h> #include <X11/extensions/dbeproto.h> #include <limits.h> -#include "eat.h" static XExtensionInfo _dbe_info_data; static XExtensionInfo *dbe_info = &_dbe_info_data; @@ -51,15 +50,9 @@ #define DbeSimpleCheckExtension(dpy,i) \ XextSimpleCheckExtension (dpy, i, dbe_extension_name) -#if !defined(UNIXCPP) #define DbeGetReq(name,req,info) GetReq (name, req); \ req->reqType = info->codes->major_opcode; \ req->dbeReqType = X_##name; -#else -#define DbeGetReq(name,req,info) GetReq (name, req); \ - req->reqType = info->codes->major_opcode; \ - req->dbeReqType = X_/**/name; -#endif /***************************************************************************** diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libXext-1.3.2/src/Xge.c new/libXext-1.3.3/src/Xge.c --- old/libXext-1.3.2/src/Xge.c 2013-05-31 23:35:08.000000000 +0200 +++ new/libXext-1.3.3/src/Xge.c 2014-07-24 00:09:30.000000000 +0200 @@ -108,15 +108,21 @@ &xge_extension_hooks, 0 /* no events, see below */, NULL); - /* We don't use an extension opcode, so we have to set the handlers - * directly. If GenericEvent would be > 64, the job would be done by - * XExtAddDisplay */ - XESetWireToEvent (dpy, - GenericEvent, - xge_extension_hooks.wire_to_event); - XESetEventToWire (dpy, - GenericEvent, - xge_extension_hooks.event_to_wire); + /* dpyinfo->codes is only null if the server claims not to suppport + XGE. Don't set up the hooks then, so that an XGE event from the + server doesn't crash our client */ + if (dpyinfo && dpyinfo->codes) + { + /* We don't use an extension opcode, so we have to set the handlers + * directly. If GenericEvent would be > 64, the job would be done by + * XExtAddDisplay */ + XESetWireToEvent (dpy, + GenericEvent, + xge_extension_hooks.wire_to_event); + XESetEventToWire (dpy, + GenericEvent, + xge_extension_hooks.event_to_wire); + } } return dpyinfo; } @@ -238,7 +244,7 @@ int extension; XGEExtList it; XExtDisplayInfo* info = _xgeFindDisplay(dpy); - if (!info) + if (!info || !info->data) return False; /* _xgeCheckExtInit() calls LockDisplay, leading to a SIGABRT. @@ -259,9 +265,6 @@ it = it->next; } - fprintf(stderr, - "_xgeWireToEvent: Unknown extension %d, this should never happen.\n", - extension); return False; } @@ -274,7 +277,7 @@ int extension; XGEExtList it; XExtDisplayInfo* info = _xgeFindDisplay(dpy); - if (!info) + if (!info || !info->data) return 1; /* error! */ extension = ((XGenericEvent*)re)->extension; @@ -289,10 +292,6 @@ it = it->next; } - fprintf(stderr, - "_xgeEventToWire: Unknown extension %d, this should never happen.\n", - extension); - return Success; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libXext-1.3.2/src/eat.h new/libXext-1.3.3/src/eat.h --- old/libXext-1.3.2/src/eat.h 2013-05-31 23:35:08.000000000 +0200 +++ new/libXext-1.3.3/src/eat.h 1970-01-01 01:00:00.000000000 +0100 @@ -1,40 +0,0 @@ -/* - * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved. - * - * 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. - * - * 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. - */ - -#ifdef HAVE_CONFIG_H -# include "config.h" -#endif - -#ifndef HAVE__XEATDATAWORDS -#include <X11/Xmd.h> /* for LONG64 on 64-bit platforms */ -#include <limits.h> - -static inline void _XEatDataWords(Display *dpy, unsigned long n) -{ -# ifndef LONG64 - if (n >= (ULONG_MAX >> 2)) - _XIOError(dpy); -# endif - _XEatData (dpy, n << 2); -} -#endif diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libXext-1.3.2/src/globals.c new/libXext-1.3.3/src/globals.c --- old/libXext-1.3.2/src/globals.c 2013-05-31 23:35:08.000000000 +0200 +++ new/libXext-1.3.3/src/globals.c 2014-01-20 00:34:26.000000000 +0100 @@ -51,15 +51,9 @@ /* * If we need to define extra variables for each global */ -#if !defined(UNIXCPP) || defined(ANSICPP) #define ZEROINIT(t,var,val) SetZero(t,var,val); \ SetZero (long, _libX_##var##Flag, 0); \ SetZero (void *, _libX_##var##Ptr, NULL) -#else /* else pcc concatenation */ -#define ZEROINIT(t,var,val) SetZero(t,var,val); \ - SetZero (long, _libX_/**/var/**/Flag, 0); \ - SetZero (void *, _libX_/**/var/**/Ptr, NULL) -#endif /* concat ANSI C vs. pcc */ #else /* else not ATTSHAREDLIB */ /* -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
