Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package libXfont2 for openSUSE:Factory checked in at 2021-08-04 22:28:34 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/libXfont2 (Old) and /work/SRC/openSUSE:Factory/.libXfont2.new.1899 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libXfont2" Wed Aug 4 22:28:34 2021 rev:6 rq:909739 version:2.0.5 Changes: -------- --- /work/SRC/openSUSE:Factory/libXfont2/libXfont2.changes 2019-09-25 00:52:30.545866846 +0200 +++ /work/SRC/openSUSE:Factory/.libXfont2.new.1899/libXfont2.changes 2021-08-04 22:29:12.129778764 +0200 @@ -1,0 +2,11 @@ +Mon Aug 2 09:57:36 UTC 2021 - Stefan Dirsch <sndir...@suse.com> + +- Update to version 2.0.5 + * README: Remove mention of libXfont 1.5 + * Fix out-of-bounds read in FontFileMakeDir() + * configure: define HAVE_LIBBSD when libbsd was found + * Fix Win32 build since c4ed2e06 "Add some unit testing utilities" + * Fix crash when font server connection lost + * Fix use after free when font server connection lost + +------------------------------------------------------------------- Old: ---- libXfont2-2.0.4.tar.bz2 New: ---- libXfont2-2.0.5.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libXfont2.spec ++++++ --- /var/tmp/diff_new_pack.R5A2ZP/_old 2021-08-04 22:29:12.625778159 +0200 +++ /var/tmp/diff_new_pack.R5A2ZP/_new 2021-08-04 22:29:12.629778154 +0200 @@ -1,7 +1,7 @@ # # spec file for package libXfont2 # -# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2021 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -18,12 +18,12 @@ Name: libXfont2 %define lname libXfont2-2 -Version: 2.0.4 +Version: 2.0.5 Release: 0 Summary: X font handling library for server and utilities License: MIT Group: Development/Libraries/C and C++ -Url: http://xorg.freedesktop.org/ +URL: http://xorg.freedesktop.org/ #Git-Clone: git://anongit.freedesktop.org/xorg/lib/libXfont #Git-Web: http://cgit.freedesktop.org/xorg/lib/libXfont/ ++++++ libXfont2-2.0.4.tar.bz2 -> libXfont2-2.0.5.tar.bz2 ++++++ ++++ 31561 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/libXfont2-2.0.4/ChangeLog new/libXfont2-2.0.5/ChangeLog --- old/libXfont2-2.0.4/ChangeLog 2019-09-14 20:41:54.000000000 +0200 +++ new/libXfont2-2.0.5/ChangeLog 2021-08-02 02:39:53.000000000 +0200 @@ -1,3 +1,79 @@ +commit 3a4f68284c5aeea77789af1fe395cac35efc8562 +Author: Alan Coopersmith <alan.coopersm...@oracle.com> +Date: Sun Aug 1 17:36:43 2021 -0700 + + libXfont2 2.0.5 + + Signed-off-by: Alan Coopersmith <alan.coopersm...@oracle.com> + +commit daff8876379c64c7bee126319af804896f83b5da +Author: Alex Richardson <alexander.richard...@cl.cam.ac.uk> +Date: Wed Jul 14 17:23:48 2021 +0100 + + Fix out-of-bounds read in FontFileMakeDir() + + BuiltinReadDirectory() calls FontFileMakeDir ("", builtin_dir_count); and + this causes the `dirName[dirlen - 1]` access to read before the start of + the string. I found this while porting Xvnc to CHERI-RISC-V (which has + bounds and permissions on all pointers). + +commit ce7a3265019e4d66198c1581d9e8c859c34e8ef1 +Author: Bernd Kuhls <bernd.ku...@t-online.de> +Date: Sat Oct 19 09:32:41 2019 +0200 + + configure: define HAVE_LIBBSD when libbsd was found + +commit 9529d2351fe52ffaaf9342343865073d5c5b6802 +Author: Peter Harris <phar...@opentext.com> +Date: Tue Mar 2 14:39:45 2021 -0500 + + Fix use after free when font server connection lost + + If there are multiple blocks waiting for the same font, only one of them + will have ->freeFont set. The rest will be in a state of FS_DEPENDING. + + If the font server dies before the font finishes opening, the block with + ->freeFont set will call ->unload_font, invalidating the pfont pointers + in the remaining FS_DEPENDING blocks. + + Avoid a use after free (and potential crash) by passing conn to + fs_cleanup_font instead of dereferencing pfont to find the conn. + + Signed-off-by: Peter Harris <phar...@opentext.com> + +commit e7b2cae1ad9f07c188bcad27767a2f4fa6e0c2a4 +Author: Peter Harris <phar...@opentext.com> +Date: Fri Mar 6 10:42:03 2020 -0500 + + Fix crash when font server connection lost + + Always initialize the return value of fs_new_block_rec. Even if the + conn->blockState is FS_BROKEN_CONNECTION | FS_RECONNECTING, we must not + return with an uninitialized blockrec on the block list. When the + blockrec times out, _fs_clean_aborted_blockrec calls fs_cleanup_bfont, + which will try to follow pointers in the blockrec (which has not been + initialized). + + Signed-off-by: Peter Harris <phar...@opentext.com> + +commit 608640b87dc47233940664632e3ab8f13972be2b +Author: Jon Turney <jon.tur...@dronecode.org.uk> +Date: Thu Oct 17 19:11:52 2019 +0100 + + Fix Win32 build since c4ed2e06 "Add some unit testing utilities" + + Provide Win32 replacements for realpath() and err.h + +commit 13ebb8f32f767c596b1b8bd16b90703a8135f20b +Author: Adam Jackson <a...@redhat.com> +Date: Mon Sep 16 10:47:27 2019 -0400 + + README: Remove mention of libXfont 1.5 + + xfs was ported to libXfont2 in release 1.2, and bdftopcf 1.1 includes a + copy of enough of the old libXfont1 code to not need an external + libXfont at all. + commit ed8b8e9fe544ec51ab1b1dfaea6fced35470ad6c Author: Alan Coopersmith <alan.coopersm...@oracle.com> Date: Sat Sep 14 11:34:03 2019 -0700 @@ -2562,25 +2638,25 @@ by the first call disappears. commit e3642d9b2c0819a607d4cce413b9f0541285545b -Author: Kristian H??gsberg <k...@redhat.com> +Author: Kristian H??gsberg <k...@redhat.com> Date: Mon Jul 2 15:01:05 2007 -0400 Bump version to 1.3.0. commit f33f9361086db3cf1d09cec067f38fe751ed22eb -Author: Kristian H??gsberg <k...@redhat.com> +Author: Kristian H??gsberg <k...@redhat.com> Date: Mon Jul 2 14:59:11 2007 -0400 Fix crash when no attributes are present for symlink. commit 8d47483711be6076e7bfefab14aa890c5f37e1aa -Author: Kristian H??gsberg <k...@redhat.com> +Author: Kristian H??gsberg <k...@redhat.com> Date: Thu Jun 21 21:44:02 2007 -0400 Bump version to 1.2.9. commit c5ab59762c4ad5def68436d55937a2bd558d5c99 -Author: Kristian H??gsberg <k...@redhat.com> +Author: Kristian H??gsberg <k...@redhat.com> Date: Tue Jun 19 10:38:02 2007 -0400 Add a new 'catalogue' FPE, which takes font paths from symlinks in a dir. @@ -2720,7 +2796,7 @@ added -flat_namespace to CFLAGS for Darwin commit 9509d5c7ee5d5e78c6eef54e8faceede5ca5f24e -Author: Kristian H??gsberg <k...@redhat.com> +Author: Kristian H??gsberg <k...@redhat.com> Date: Mon Jan 22 18:24:19 2007 -0500 Bump to 1.2.7. @@ -2735,7 +2811,7 @@ loaded), load it as a valid font path anyway. commit 931b777108526dd0761f948dcd9f1603ac02efc8 -Author: Kristian H??gsberg <k...@redhat.com> +Author: Kristian H??gsberg <k...@redhat.com> Date: Wed Jan 17 17:19:53 2007 -0500 Add stubs for the scalable renderer callbacks. @@ -3230,7 +3306,7 @@ Default --enable-fc to yes; minor formatting changes. commit 4534fa0c8adb77b7db47101318e0e863edb186ce -Author: S??ren Sandmann Pedersen <sandm...@daimi.au.dk> +Author: S??ren Sandmann Pedersen <sandm...@daimi.au.dk> Date: Mon Jun 27 16:09:14 2005 +0000 - Remove fontenc from Xfont @@ -3242,26 +3318,26 @@ - Fix xp.pc.in to add XPRINT_LIBS/CFLAGS instead of X_LIBS/CFLAGS commit fda7215c0783ad170eb14f7dda078fac3f134470 -Author: S??ren Sandmann Pedersen <sandm...@daimi.au.dk> +Author: S??ren Sandmann Pedersen <sandm...@daimi.au.dk> Date: Tue Jun 21 21:29:40 2005 +0000 Add fontenc directory, update buildsystem commit db8fd7e670cbd901116344212217bee8001ab460 -Author: S??ren Sandmann Pedersen <sandm...@daimi.au.dk> +Author: S??ren Sandmann Pedersen <sandm...@daimi.au.dk> Date: Fri Jun 17 20:33:33 2005 +0000 Add lbxutil to symlink.sh Add back accidentally removed include in Type1 directory Disable Speedo by default commit e5525d268c6165318894f326be445b22a2523558 -Author: S??ren Sandmann Pedersen <sandm...@daimi.au.dk> +Author: S??ren Sandmann Pedersen <sandm...@daimi.au.dk> Date: Thu Jun 16 21:35:26 2005 +0000 Add Speedo directory to Xfont commit b96f539005da57273dc7e2bee13651de4eedf087 -Author: S??ren Sandmann Pedersen <sandm...@daimi.au.dk> +Author: S??ren Sandmann Pedersen <sandm...@daimi.au.dk> Date: Thu Jun 16 20:50:12 2005 +0000 Add Type1 subdirectory to lib/Xfonts, update build system accordingly. 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/libXfont2-2.0.4/README.md new/libXfont2-2.0.5/README.md --- old/libXfont2-2.0.4/README.md 2019-09-14 20:41:35.000000000 +0200 +++ new/libXfont2-2.0.5/README.md 2021-08-02 02:39:33.000000000 +0200 @@ -3,15 +3,10 @@ libXfont provides the core of the legacy X11 font system, handling the index files (fonts.dir, fonts.alias, fonts.scale), the various font file formats, -and rasterizing them. It is used by the X servers, and will eventually be -used by the X Font Server (xfs), but should not be used by normal X11 clients. -X11 clients access fonts via either the new APIs in libXft, or the legacy -APIs in libX11. - -This version of libXfont is not compatible with xfs, or with the legacy -bdftopcf utility; these packages require libXfont 1.5, not libXfont 2.0 -or later. The two versions can be installed in parallel, and eventually -the need for 1.5 will go away. We apologize for the inconvenience. +and rasterizing them. It is used by the X display servers (Xorg, Xvfb, etc.) +and the X Font Server (xfs), but should not be used by normal X11 clients. X11 +clients access fonts via either the new APIs in libXft, or the legacy APIs in +libX11. libXfont supports a number of compression and font formats, and the configure script takes various options to enable or disable them: 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/libXfont2-2.0.4/compile new/libXfont2-2.0.5/compile --- old/libXfont2-2.0.4/compile 2019-09-14 20:41:43.000000000 +0200 +++ new/libXfont2-2.0.5/compile 2021-08-02 02:39:43.000000000 +0200 @@ -1,9 +1,9 @@ #! /bin/sh # Wrapper for compilers which do not understand '-c -o'. -scriptversion=2012-10-14.11; # UTC +scriptversion=2018-03-07.03; # UTC -# Copyright (C) 1999-2014 Free Software Foundation, Inc. +# Copyright (C) 1999-2021 Free Software Foundation, Inc. # Written by Tom Tromey <tro...@cygnus.com>. # # This program is free software; you can redistribute it and/or modify @@ -17,7 +17,7 @@ # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. +# along with this program. If not, see <https://www.gnu.org/licenses/>. # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a @@ -53,7 +53,7 @@ MINGW*) file_conv=mingw ;; - CYGWIN*) + CYGWIN* | MSYS*) file_conv=cygwin ;; *) @@ -67,7 +67,7 @@ mingw/*) file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'` ;; - cygwin/*) + cygwin/* | msys/*) file=`cygpath -m "$file" || echo "$file"` ;; wine/*) @@ -255,7 +255,8 @@ echo "compile $scriptversion" exit $? ;; - cl | *[/\\]cl | cl.exe | *[/\\]cl.exe ) + cl | *[/\\]cl | cl.exe | *[/\\]cl.exe | \ + icl | *[/\\]icl | icl.exe | *[/\\]icl.exe ) func_cl_wrapper "$@" # Doesn't return... ;; esac @@ -339,9 +340,9 @@ # Local Variables: # mode: shell-script # sh-indentation: 2 -# eval: (add-hook 'write-file-hooks 'time-stamp) +# eval: (add-hook 'before-save-hook 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-time-zone: "UTC" +# time-stamp-time-zone: "UTC0" # time-stamp-end: "; # UTC" # End: 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/libXfont2-2.0.4/config.h.in new/libXfont2-2.0.5/config.h.in --- old/libXfont2-2.0.4/config.h.in 2019-09-14 20:41:42.000000000 +0200 +++ new/libXfont2-2.0.5/config.h.in 2021-08-02 02:39:42.000000000 +0200 @@ -9,14 +9,20 @@ /* Define to 1 if you have the <endian.h> header file. */ #undef HAVE_ENDIAN_H +/* Define to 1 if you have the <err.h> header file. */ +#undef HAVE_ERR_H + /* Define to 1 if you have the <inttypes.h> header file. */ #undef HAVE_INTTYPES_H +/* Has libbsd */ +#undef HAVE_LIBBSD + /* Define to 1 if you have the `ws2_32' library (-lws2_32). */ #undef HAVE_LIBWS2_32 -/* Define to 1 if you have the <memory.h> header file. */ -#undef HAVE_MEMORY_H +/* Define to 1 if you have the <minix/config.h> header file. */ +#undef HAVE_MINIX_CONFIG_H /* Define to 1 if you have the `poll' function. */ #undef HAVE_POLL @@ -30,15 +36,24 @@ /* Define to 1 if you have the `reallocarray' function. */ #undef HAVE_REALLOCARRAY +/* Define to 1 if you have the `realpath' function. */ +#undef HAVE_REALPATH + /* Define to 1 if the system has the type `socklen_t'. */ #undef HAVE_SOCKLEN_T /* Define to 1 if you have the <stdint.h> header file. */ #undef HAVE_STDINT_H +/* Define to 1 if you have the <stdio.h> header file. */ +#undef HAVE_STDIO_H + /* Define to 1 if you have the <stdlib.h> header file. */ #undef HAVE_STDLIB_H +/* Define to 1 if you have the `strcasecmp' function. */ +#undef HAVE_STRCASECMP + /* Define to 1 if you have the <strings.h> header file. */ #undef HAVE_STRINGS_H @@ -63,6 +78,9 @@ /* Define to 1 if you have the <unistd.h> header file. */ #undef HAVE_UNISTD_H +/* Define to 1 if you have the <wchar.h> header file. */ +#undef HAVE_WCHAR_H + /* Support IPv6 for TCP connections */ #undef IPv6 @@ -102,7 +120,9 @@ /* Patch version of this package */ #undef PACKAGE_VERSION_PATCHLEVEL -/* Define to 1 if you have the ANSI C header files. */ +/* Define to 1 if all of the C90 standard headers exist (not just the ones + required in a freestanding environment). This macro is provided for + backward compatibility; new code need not use it. */ #undef STDC_HEADERS /* Support TCP socket connections */ @@ -115,21 +135,87 @@ #ifndef _ALL_SOURCE # undef _ALL_SOURCE #endif +/* Enable general extensions on macOS. */ +#ifndef _DARWIN_C_SOURCE +# undef _DARWIN_C_SOURCE +#endif +/* Enable general extensions on Solaris. */ +#ifndef __EXTENSIONS__ +# undef __EXTENSIONS__ +#endif /* Enable GNU extensions on systems that have them. */ #ifndef _GNU_SOURCE # undef _GNU_SOURCE #endif -/* Enable threading extensions on Solaris. */ +/* Enable X/Open compliant socket functions that do not require linking + with -lxnet on HP-UX 11.11. */ +#ifndef _HPUX_ALT_XOPEN_SOCKET_API +# undef _HPUX_ALT_XOPEN_SOCKET_API +#endif +/* Identify the host operating system as Minix. + This macro does not affect the system headers' behavior. + A future release of Autoconf may stop defining this macro. */ +#ifndef _MINIX +# undef _MINIX +#endif +/* Enable general extensions on NetBSD. + Enable NetBSD compatibility extensions on Minix. */ +#ifndef _NETBSD_SOURCE +# undef _NETBSD_SOURCE +#endif +/* Enable OpenBSD compatibility extensions on NetBSD. + Oddly enough, this does nothing on OpenBSD. */ +#ifndef _OPENBSD_SOURCE +# undef _OPENBSD_SOURCE +#endif +/* Define to 1 if needed for POSIX-compatible behavior. */ +#ifndef _POSIX_SOURCE +# undef _POSIX_SOURCE +#endif +/* Define to 2 if needed for POSIX-compatible behavior. */ +#ifndef _POSIX_1_SOURCE +# undef _POSIX_1_SOURCE +#endif +/* Enable POSIX-compatible threading on Solaris. */ #ifndef _POSIX_PTHREAD_SEMANTICS # undef _POSIX_PTHREAD_SEMANTICS #endif +/* Enable extensions specified by ISO/IEC TS 18661-5:2014. */ +#ifndef __STDC_WANT_IEC_60559_ATTRIBS_EXT__ +# undef __STDC_WANT_IEC_60559_ATTRIBS_EXT__ +#endif +/* Enable extensions specified by ISO/IEC TS 18661-1:2014. */ +#ifndef __STDC_WANT_IEC_60559_BFP_EXT__ +# undef __STDC_WANT_IEC_60559_BFP_EXT__ +#endif +/* Enable extensions specified by ISO/IEC TS 18661-2:2015. */ +#ifndef __STDC_WANT_IEC_60559_DFP_EXT__ +# undef __STDC_WANT_IEC_60559_DFP_EXT__ +#endif +/* Enable extensions specified by ISO/IEC TS 18661-4:2015. */ +#ifndef __STDC_WANT_IEC_60559_FUNCS_EXT__ +# undef __STDC_WANT_IEC_60559_FUNCS_EXT__ +#endif +/* Enable extensions specified by ISO/IEC TS 18661-3:2015. */ +#ifndef __STDC_WANT_IEC_60559_TYPES_EXT__ +# undef __STDC_WANT_IEC_60559_TYPES_EXT__ +#endif +/* Enable extensions specified by ISO/IEC TR 24731-2:2010. */ +#ifndef __STDC_WANT_LIB_EXT2__ +# undef __STDC_WANT_LIB_EXT2__ +#endif +/* Enable extensions specified by ISO/IEC 24747:2009. */ +#ifndef __STDC_WANT_MATH_SPEC_FUNCS__ +# undef __STDC_WANT_MATH_SPEC_FUNCS__ +#endif /* Enable extensions on HP NonStop. */ #ifndef _TANDEM_SOURCE # undef _TANDEM_SOURCE #endif -/* Enable general extensions on Solaris. */ -#ifndef __EXTENSIONS__ -# undef __EXTENSIONS__ +/* Enable X/Open extensions. Define to 500 only if necessary + to make mbstate_t available. */ +#ifndef _XOPEN_SOURCE +# undef _XOPEN_SOURCE #endif @@ -166,15 +252,5 @@ /* Support gzip for bitmap fonts */ #undef X_GZIP_FONT_COMPRESSION -/* Define to 1 if on MINIX. */ -#undef _MINIX - -/* Define to 2 if the system does not provide POSIX.1 features except with - this defined. */ -#undef _POSIX_1_SOURCE - -/* Define to 1 if you need to in order for `stat' and other things to work. */ -#undef _POSIX_SOURCE - /* Defined if needed to expose struct msghdr.msg_control */ #undef _XOPEN_SOURCE 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/libXfont2-2.0.4/configure.ac new/libXfont2-2.0.5/configure.ac --- old/libXfont2-2.0.4/configure.ac 2019-09-14 20:41:35.000000000 +0200 +++ new/libXfont2-2.0.5/configure.ac 2021-08-02 02:39:33.000000000 +0200 @@ -21,7 +21,7 @@ # Initialize Autoconf AC_PREREQ([2.60]) -AC_INIT([libXfont2], [2.0.4], +AC_INIT([libXfont2], [2.0.5], [https://gitlab.freedesktop.org/xorg/lib/libXfont/issues], [libXfont2]) AC_CONFIG_SRCDIR([Makefile.am]) AC_CONFIG_HEADERS([config.h]) @@ -53,8 +53,14 @@ # Checks for library functions. AC_CHECK_FUNCS([poll readlink]) AC_SEARCH_LIBS([strlcat], [bsd]) +if test "$ac_cv_search_strlcat" = "-lbsd"; then + AC_DEFINE(HAVE_LIBBSD,1,[Has libbsd]) +fi AC_CONFIG_LIBOBJ_DIR([src/util]) -AC_REPLACE_FUNCS([reallocarray strlcat strlcpy]) +AC_REPLACE_FUNCS([reallocarray realpath strlcat strlcpy]) + +# Check for BSDish err.h +AC_CHECK_HEADERS([err.h]) # If the first PKG_CHECK_MODULES appears inside a conditional, pkg-config # must first be located explicitly. 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/libXfont2-2.0.4/missing new/libXfont2-2.0.5/missing --- old/libXfont2-2.0.4/missing 2019-09-14 20:41:43.000000000 +0200 +++ new/libXfont2-2.0.5/missing 2021-08-02 02:39:43.000000000 +0200 @@ -1,9 +1,9 @@ #! /bin/sh # Common wrapper for a few potentially missing GNU programs. -scriptversion=2013-10-28.13; # UTC +scriptversion=2018-03-07.03; # UTC -# Copyright (C) 1996-2014 Free Software Foundation, Inc. +# Copyright (C) 1996-2021 Free Software Foundation, Inc. # Originally written by Fran,cois Pinard <pin...@iro.umontreal.ca>, 1996. # This program is free software; you can redistribute it and/or modify @@ -17,7 +17,7 @@ # GNU General Public License for more details. # You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. +# along with this program. If not, see <https://www.gnu.org/licenses/>. # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a @@ -101,9 +101,9 @@ exit $st fi -perl_URL=http://www.perl.org/ -flex_URL=http://flex.sourceforge.net/ -gnu_software_URL=http://www.gnu.org/software +perl_URL=https://www.perl.org/ +flex_URL=https://github.com/westes/flex +gnu_software_URL=https://www.gnu.org/software program_details () { @@ -207,9 +207,9 @@ exit $st # Local variables: -# eval: (add-hook 'write-file-hooks 'time-stamp) +# eval: (add-hook 'before-save-hook 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-time-zone: "UTC" +# time-stamp-time-zone: "UTC0" # time-stamp-end: "; # UTC" # End: 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/libXfont2-2.0.4/src/fc/fserve.c new/libXfont2-2.0.5/src/fc/fserve.c --- old/libXfont2-2.0.4/src/fc/fserve.c 2019-09-14 20:41:35.000000000 +0200 +++ new/libXfont2-2.0.5/src/fc/fserve.c 2021-08-02 02:39:33.000000000 +0200 @@ -124,14 +124,14 @@ static int _fs_restart_connection ( FSFpePtr conn ); static void fs_send_query_bitmaps ( FontPathElementPtr fpe, FSBlockDataPtr blockrec ); -static int fs_send_close_font ( FontPathElementPtr fpe, Font id ); +static int fs_send_close_font (FSFpePtr conn, Font id); static void fs_client_died ( pointer client, FontPathElementPtr fpe ); static void _fs_client_access ( FSFpePtr conn, pointer client, Bool sync ); static void _fs_client_resolution ( FSFpePtr conn ); static fsGenericReply *fs_get_reply (FSFpePtr conn, int *error); static int fs_await_reply (FSFpePtr conn); static void _fs_do_blocked (FSFpePtr conn); -static void fs_cleanup_bfont (FSBlockedFontPtr bfont); +static void fs_cleanup_bfont (FSFpePtr conn, FSBlockedFontPtr bfont); char _fs_glyph_undefined; char _fs_glyph_requested; @@ -546,7 +546,7 @@ case FS_OPEN_FONT: { FSBlockedFontPtr bfont = (FSBlockedFontPtr)blockrec->data; - fs_cleanup_bfont (bfont); + fs_cleanup_bfont (conn, bfont); _fs_signal_clients_depending(&bfont->clients_depending); break; } @@ -585,16 +585,12 @@ * then unload the partially created font */ static void -fs_cleanup_bfont (FSBlockedFontPtr bfont) +fs_cleanup_bfont (FSFpePtr conn, FSBlockedFontPtr bfont) { - FSFontDataRec *fsd; - if (bfont->pfont) { - fsd = (FSFontDataRec *) bfont->pfont->fpePrivate; - /* make sure the FS knows we choked on it */ - fs_send_close_font(bfont->pfont->fpe, bfont->fontid); + fs_send_close_font(conn, bfont->fontid); /* * Either unload the font if it's being opened for @@ -612,7 +608,10 @@ bfont->pfont = 0; } else + { + FSFontDataRec *fsd = (FSFontDataRec *)bfont->pfont->fpePrivate; fsd->generation = -1; + } } } @@ -746,7 +745,7 @@ return StillWorking; if (rep) _fs_done_read (conn, rep->length << 2); - fs_cleanup_bfont (bfont); + fs_cleanup_bfont (conn, bfont); _fs_reply_failed (rep, fsOpenBitmapFontReply, "!="); return BadFontName; } @@ -762,7 +761,7 @@ if (rep->otherid && !(bfont->flags & FontReopen)) { - fs_cleanup_bfont (bfont); + fs_cleanup_bfont (conn, bfont); /* Find old font if we're completely done getting it from server. */ bfont->pfont = find_old_font(rep->otherid); @@ -891,7 +890,7 @@ return StillWorking; if (rep) _fs_done_read (conn, rep->length << 2); - fs_cleanup_bfont (bfont); + fs_cleanup_bfont (conn, bfont); _fs_reply_failed (rep, fsQueryXInfoReply, "<"); return BadFontName; } @@ -964,7 +963,7 @@ if (ret == -1) { - fs_cleanup_bfont (bfont); + fs_cleanup_bfont (conn, bfont); return AllocError; } @@ -983,7 +982,7 @@ } else { - fs_cleanup_bfont (bfont); + fs_cleanup_bfont (conn, bfont); err = BadFontName; } _fs_free_props (pInfo); @@ -1056,7 +1055,7 @@ return StillWorking; if (rep) _fs_done_read (conn, rep->length << 2); - fs_cleanup_bfont (bfont); + fs_cleanup_bfont (conn, bfont); _fs_reply_failed (rep, fsQueryXExtents16Reply, "<"); return BadFontName; } @@ -1094,7 +1093,7 @@ if (!pCI) { _fs_done_read (conn, rep->length << 2); - fs_cleanup_bfont(bfont); + fs_cleanup_bfont(conn, bfont); return AllocError; } fsfont->encoding = pCI; @@ -1697,16 +1696,6 @@ return AllocError; } - /* - * Must check this before generating any protocol, otherwise we'll - * mess up a reconnect in progress - */ - if (conn->blockState & (FS_BROKEN_CONNECTION | FS_RECONNECTING)) - { - _fs_pending_reply (conn); - return Suspended; - } - fsd->generation = conn->generation; bfont = (FSBlockedFontPtr) blockrec->data; @@ -1718,6 +1707,16 @@ bfont->clients_depending = (FSClientsDependingPtr)0; bfont->freeFont = (flags & FontReopen) == 0; + /* + * Must check this before generating any protocol, otherwise we'll + * mess up a reconnect in progress + */ + if (conn->blockState & (FS_BROKEN_CONNECTION | FS_RECONNECTING)) + { + _fs_pending_reply (conn); + return Suspended; + } + _fs_client_access (conn, client, (flags & FontOpenSync) != 0); _fs_client_resolution(conn); @@ -1788,7 +1787,7 @@ if (err == Successful) *ppfont = bfont->pfont; else - fs_cleanup_bfont (bfont); + fs_cleanup_bfont (conn, bfont); bfont->freeFont = FALSE; _fs_remove_block_rec (conn, blockrec); } @@ -1845,7 +1844,7 @@ if (err == Successful) *ppfont = bfont->pfont; else - fs_cleanup_bfont (bfont); + fs_cleanup_bfont (conn, bfont); _fs_remove_block_rec (conn, blockrec); return err; } @@ -1856,9 +1855,8 @@ /* ARGSUSED */ static int -fs_send_close_font(FontPathElementPtr fpe, Font id) +fs_send_close_font(FSFpePtr conn, Font id) { - FSFpePtr conn = (FSFpePtr) fpe->private; fsCloseReq req; if (conn->blockState & FS_GIVE_UP) @@ -1882,7 +1880,7 @@ FSFpePtr conn = (FSFpePtr) fpe->private; if (conn->generation == fsd->generation) - fs_send_close_font(fpe, fsd->fontid); + fs_send_close_font(conn, fsd->fontid); #ifdef DEBUG { 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/libXfont2-2.0.4/src/fontfile/fontdir.c new/libXfont2-2.0.5/src/fontfile/fontdir.c --- old/libXfont2-2.0.4/src/fontfile/fontdir.c 2019-09-14 20:41:35.000000000 +0200 +++ new/libXfont2-2.0.5/src/fontfile/fontdir.c 2021-08-02 02:39:33.000000000 +0200 @@ -125,10 +125,7 @@ dirlen = strlen(dirName); attriblen = 0; } - if (dirName[dirlen - 1] != '/') -#ifdef NCD - if (dirlen) /* leave out slash for builtins */ -#endif + if (dirlen && dirName[dirlen - 1] != '/') needslash = 1; dir = malloc(sizeof *dir + dirlen + needslash + 1 + (attriblen ? attriblen + 1 : 0)); 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/libXfont2-2.0.4/src/util/realpath.c new/libXfont2-2.0.5/src/util/realpath.c --- old/libXfont2-2.0.4/src/util/realpath.c 1970-01-01 01:00:00.000000000 +0100 +++ new/libXfont2-2.0.5/src/util/realpath.c 2021-08-02 02:39:33.000000000 +0200 @@ -0,0 +1,29 @@ +/* + * Copyright ?? 2019 Jon Turney. + * + * Permission to use, copy, modify, and distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND TODD C. MILLER DISCLAIMS ALL + * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES + * OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL TODD C. MILLER BE LIABLE + * FOR ANY SPECIAL, DIRECT, 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. + */ + +#ifdef HAVE_CONFIG_H +#include <config.h> +#endif + +#include "src/util/replace.h" + +#ifdef WIN32 +char * +realpath(const char *path, char *resolved_path) +{ + return _fullpath(resolved_path, path, _MAX_PATH); +} +#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/libXfont2-2.0.4/src/util/replace.h new/libXfont2-2.0.5/src/util/replace.h --- old/libXfont2-2.0.4/src/util/replace.h 2019-09-14 20:41:35.000000000 +0200 +++ new/libXfont2-2.0.5/src/util/replace.h 2021-08-02 02:39:33.000000000 +0200 @@ -57,5 +57,21 @@ strlcat(char *dst, const char *src, size_t siz); #endif +#ifndef HAVE_ERR_H +#define err(eval, ...) do { \ + fprintf(stderr, __VA_ARGS__); \ + fprintf(stderr, "\n"); \ + exit(eval); \ + } while (0) +#define vwarn(...) do { \ + fprintf(stderr, __VA_ARGS__); \ + fprintf(stderr, "\n"); \ + } while (0) +#endif + +#ifndef HAVE_REALPATH +extern _X_HIDDEN char * +realpath(const char *path, char *resolved_path); +#endif #endif /* XFONT_REPLACE_H */ 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/libXfont2-2.0.4/test/utils/font-test-utils.c new/libXfont2-2.0.5/test/utils/font-test-utils.c --- old/libXfont2-2.0.4/test/utils/font-test-utils.c 2019-09-14 20:41:35.000000000 +0200 +++ new/libXfont2-2.0.5/test/utils/font-test-utils.c 2021-08-02 02:39:33.000000000 +0200 @@ -58,7 +58,10 @@ #include <stdlib.h> #include <limits.h> #include <assert.h> +#ifdef HAVE_ERR_H #include <err.h> +#endif +#include "src/util/replace.h" #include <X11/X.h> static unsigned long server_generation; 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/libXfont2-2.0.4/test/utils/lsfontdir.c new/libXfont2-2.0.5/test/utils/lsfontdir.c --- old/libXfont2-2.0.4/test/utils/lsfontdir.c 2019-09-14 20:41:35.000000000 +0200 +++ new/libXfont2-2.0.5/test/utils/lsfontdir.c 2021-08-02 02:39:33.000000000 +0200 @@ -30,7 +30,10 @@ #include "font-test-utils.h" #include <stdio.h> #include <assert.h> +#ifdef HAVE_ERR_H #include <err.h> +#endif +#include "src/util/replace.h" int main(int argc, char **argv)