libxfont: Changes to 'upstream-unstable'
COPYING | 2
configure.ac | 110 +++++++++++++++++++++++-----------------------
devbook.am | 61 +++++++++++++++++++++++++
doc/.gitignore | 2
doc/Makefile.am | 62 +------------------------
doc/fontlib.xml | 6 +-
src/bitmap/bitscale.c | 11 +---
src/fontfile/bunzip2.c | 2
src/fontfile/decompress.c | 2
9 files changed, 132 insertions(+), 126 deletions(-)
New commits:
commit a7970f5c817b5c75d945389cfaf1384ff23437f3
Author: Matthieu Herrb <matthieu.herrb@laas.fr>
Date: Mon Aug 8 18:08:05 2011 +0200
libXfont 1.4.4
Signed-off-by: Matthieu Herrb <matthieu.herrb@laas.fr>
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
diff --git a/configure.ac b/configure.ac
index c62d6e4..7aa7a1c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -27,7 +27,7 @@ AC_PREREQ([2.60])
# Yes, it is a pain to synchronize version numbers. Unfortunately, it's
# not possible to extract the version number here from Xfont.h
#
-AC_INIT([libXfont], [1.4.3],
+AC_INIT([libXfont], [1.4.4],
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], [libXfont])
AC_CONFIG_SRCDIR([Makefile.am])
AC_CONFIG_HEADERS([config.h include/X11/fonts/fontconf.h])
commit d11ee5886e9d9ec610051a206b135a4cdc1e09a0
Author: Thomas Hoger <thoger@redhat.com>
Date: Mon Aug 8 18:03:09 2011 +0200
LZW decompress: fix for CVE-2011-2895
Specially crafted LZW stream can crash an application using libXfont
that is used to open untrusted font files. With X server, this may
allow privilege escalation when exploited
Reviewed-by: Matthieu Herrb <matthieu.herrb@laas.fr>
Signed-off-by: Matthieu Herrb <matthieu.herrb@laas.fr>
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
diff --git a/src/fontfile/decompress.c b/src/fontfile/decompress.c
index b1fc37b..c8171dd 100644
--- a/src/fontfile/decompress.c
+++ b/src/fontfile/decompress.c
@@ -259,6 +259,8 @@ BufCompressedFill (BufFilePtr f)
*/
while ( code >= 256 )
{
+ if (stackp - de_stack >= STACK_SIZE - 1)
+ return BUFFILEEOF;
*stackp++ = file->tab_suffix[code];
code = file->tab_prefix[code];
}
commit 214ca6a7a2247544627e6dc7c8705811305ad007
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Mon May 16 18:28:13 2011 -0700
Fix memory leak in allocation failure path of BitmapOpenScalable()
Go ahead and fill in the font->info pointers so that bitmapUnloadScalable()
will free the bits that were allocated, even if some were not.
Error: Memory leak (CWE 401)
Memory leak of pointer <unknown> allocated with ComputeScaledProperties(...)
at line 1629 of /export/alanc/X.Org/git/lib/libXfont/src/bitmap/bitscale.c in function 'BitmapOpenScalable'.
pointer allocated at line 1616 with ComputeScaledProperties(...).
<unknown> leaks when props != 0 at line 1623.
[ This bug was found by the Parfait 0.3.7 bug checking tool.
For more information see http://labs.oracle.com/projects/parfait/ ]
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Reviewed-by: Jeremy Huddleston <jeremyhu@apple.com>
diff --git a/src/bitmap/bitscale.c b/src/bitmap/bitscale.c
index cf16bff..50818c6 100644
--- a/src/bitmap/bitscale.c
+++ b/src/bitmap/bitscale.c
@@ -1620,19 +1620,16 @@ BitmapOpenScalable (FontPathElementPtr fpe,
if (!sourceFont->refcnt)
FontFileCloseFont((FontPathElementPtr) 0, sourceFont);
+ font->info.props = props;
+ font->info.nprops = propCount;
+ font->info.isStringProp = isStringProp;
+
if (propCount && (!props || !isStringProp))
{
- font->info.nprops = 0;
- font->info.props = (FontPropPtr)0;
- font->info.isStringProp = (char *)0;
bitmapUnloadScalable(font);
return AllocError;
}
- font->info.props = props;
- font->info.nprops = propCount;
- font->info.isStringProp = isStringProp;
-
*pFont = font;
return Successful;
}
commit 7f8345aa6fb60a7fd7adf0095a2354fad1d8d5ef
Author: Gaetan Nadon <memsize@videotron.ca>
Date: Wed Mar 2 14:33:07 2011 -0500
doc: use common makefile for developers documentation
The user/specs docs now have external references support.
Developers doc are not installed so they do not participate.
However, using a similar makefile shared amongst developers
document reduces maintenance and is forward looking.
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
diff --git a/configure.ac b/configure.ac
index 0dbb5a1..c62d6e4 100644
--- a/configure.ac
+++ b/configure.ac
@@ -45,9 +45,9 @@ m4_ifndef([XORG_MACROS_VERSION],
XORG_MACROS_VERSION(1.10)
XORG_DEFAULT_OPTIONS
XORG_ENABLE_DEVEL_DOCS
-XORG_WITH_XMLTO(0.0.20)
+XORG_WITH_XMLTO(0.0.22)
XORG_WITH_FOP
-XORG_CHECK_SGML_DOCTOOLS(1.5)
+XORG_CHECK_SGML_DOCTOOLS(1.7)
# Checks for header files.
AC_CHECK_HEADERS([endian.h poll.h sys/poll.h])
diff --git a/devbook.am b/devbook.am
new file mode 100644
index 0000000..62f4829
--- /dev/null
+++ b/devbook.am
@@ -0,0 +1,61 @@
+#
+# Generate output formats for a single DocBook/XML with/without chapters
+#
+# Variables set by the calling Makefile:
+# noinst_DATA: developers docs are not installed
+# docbook: the main DocBook/XML file, no chapters, appendix or image files
+# chapters: all files pulled in by an XInclude statement and images.
+#
+
+#
+# This makefile is intended for Developers Documentation and is not installed.
+# Do not use for Users docs or Specs which need to be installed and require olink support
+# Refer to http://www.x.org/releases/X11R7.6/doc/xorg-docs/ReleaseNotes.html#id2584393
+# for an explanation on documents classification.
+#
+
+# Developers documnetation is not installed
+noinst_DATA =
+
+# DocBook/XML file with chapters, appendix and images it includes
+dist_noinst_DATA = $(docbook) $(chapters)
+
+#
+# Generate DocBook/XML output formats with or without stylesheets
+#
+
+# Stylesheets are available if the package xorg-sgml-doctools is installed
+if HAVE_STYLESHEETS
+
+# The location where all cross reference databases are installed
+XMLTO_FLAGS = \
+ --searchpath "$(XORG_SGML_PATH)/X11" \
+ --stringparam current.docid="$(<:.xml=)"
+
+XMLTO_XHTML_FLAGS = \
+ -m $(STYLESHEET_SRCDIR)/xorg-xhtml.xsl \
+ --stringparam html.stylesheet=$(STYLESHEET_SRCDIR)/xorg.css
+
+XMLTO_FO_FLAGS = \
+ -m $(STYLESHEET_SRCDIR)/xorg-fo.xsl
+endif HAVE_STYLESHEETS
+
+noinst_DATA += $(docbook:.xml=.html)
+%.html: %.xml $(chapters)
+ $(AM_V_GEN)$(XMLTO) $(XMLTO_FLAGS) $(XMLTO_XHTML_FLAGS) xhtml-nochunks $<
+
+if HAVE_FOP
+noinst_DATA += $(docbook:.xml=.pdf) $(docbook:.xml=.ps)
+%.pdf: %.xml $(chapters)
+ $(AM_V_GEN)$(XMLTO) $(XMLTO_FLAGS) $(XMLTO_FO_FLAGS) --with-fop pdf $<
+%.ps: %.xml $(chapters)
+ $(AM_V_GEN)$(XMLTO) $(XMLTO_FLAGS) $(XMLTO_FO_FLAGS) --with-fop ps $<
+endif HAVE_FOP
+
+if HAVE_XMLTO_TEXT
+noinst_DATA += $(docbook:.xml=.txt)
+%.txt: %.xml $(chapters)
+ $(AM_V_GEN)$(XMLTO) $(XMLTO_FLAGS) $(XMLTO_XHTML_FLAGS) txt $<
+endif HAVE_XMLTO_TEXT
+
+CLEANFILES = $(noinst_DATA)
diff --git a/doc/Makefile.am b/doc/Makefile.am
index d2c4724..4a093c0 100644
--- a/doc/Makefile.am
+++ b/doc/Makefile.am
@@ -1,63 +1,12 @@
-#
-# Copyright (c) 2010, 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.
-#
-
-# Developer documentation - not installed on system
-EXTRA_DIST = fontlib.xml
if ENABLE_DEVEL_DOCS
-doc_sources = fontlib.xml
-
if HAVE_XMLTO
-noinst_DATA = $(doc_sources:.xml=.html)
-
-if HAVE_FOP
-noinst_DATA += $(doc_sources:.xml=.ps) $(doc_sources:.xml=.pdf)
-endif
-
-if HAVE_XMLTO_TEXT
-noinst_DATA += $(doc_sources:.xml=.txt)
-endif
-
-if HAVE_STYLESHEETS
-XMLTO_FLAGS = -m $(XSL_STYLESHEET) \
- --stringparam html.stylesheet=$(STYLESHEET_SRCDIR)/xorg.css
-endif
-
-CLEANFILES = $(noinst_DATA)
-
-SUFFIXES = .xml .ps .pdf .txt .html
-
-.xml.txt:
- $(AM_V_GEN)$(XMLTO) $(XMLTO_FLAGS) txt $<
-
-.xml.html:
- $(AM_V_GEN)$(XMLTO) $(XMLTO_FLAGS) xhtml-nochunks $<
-.xml.pdf:
- $(AM_V_GEN)$(XMLTO) $(XMLTO_FLAGS) --with-fop pdf $<
+# Main DocBook/XML files (DOCTYPE book)
+docbook = fontlib.xml
-.xml.ps:
- $(AM_V_GEN)$(XMLTO) $(XMLTO_FLAGS) --with-fop ps $<
+# Generate DocBook/XML output formats with or without stylesheets
+include $(top_srcdir)/devbook.am
endif HAVE_XMLTO
endif ENABLE_DEVEL_DOCS
diff --git a/doc/fontlib.xml b/doc/fontlib.xml
index 86cef8d..cce83e9 100644
--- a/doc/fontlib.xml
+++ b/doc/fontlib.xml
@@ -4,7 +4,7 @@
<!-- lifted from troff+ms by doclifter -->
<!-- previous version was in xorg-docs/specs/Xserver/fontlib.ms -->
- <article id='fontlibms'>
+ <article id='fontlib'>
<!-- .ps 12 -->
<!-- .EF 'Font Library Interface'\- % \-'July 27, 1991' -->
<!-- .OF 'Font Library Interface'\- % \-'July 27, 1991' -->
commit 77027deabca37183cfbbed107cf14ca80f29f26d
Author: Gaetan Nadon <memsize@videotron.ca>
Date: Wed Feb 2 11:43:42 2011 -0500
config: comment, minor upgrade, quote and layout configure.ac
Group statements per section as per Autoconf standard layout
Quote statements where appropriate.
Autoconf recommends not using dnl instead of # for comments
Use AC_CONFIG_FILES to replace the deprecated AC_OUTPUT with parameters.
Add AC_CONFIG_SRCDIR([Makefile.am])
This helps automated maintenance and release activities.
Details can be found in http://wiki.x.org/wiki/NewModuleGuidelines
diff --git a/configure.ac b/configure.ac
index d119528..0dbb5a1 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,42 +1,44 @@
-dnl Copyright © 2003 Keith Packard
-dnl
-dnl Permission to use, copy, modify, distribute, and sell this software and its
-dnl documentation for any purpose is hereby granted without fee, provided that
-dnl the above copyright notice appear in all copies and that both that
-dnl copyright notice and this permission notice appear in supporting
-dnl documentation, and that the name of Keith Packard not be used in
-dnl advertising or publicity pertaining to distribution of the software without
-dnl specific, written prior permission. Keith Packard makes no
-dnl representations about the suitability of this software for any purpose. It
-dnl is provided "as is" without express or implied warranty.
-dnl
-dnl KEITH PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
-dnl INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
-dnl EVENT SHALL KEITH PACKARD BE LIABLE FOR ANY SPECIAL, INDIRECT OR
-dnl CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
-dnl DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
-dnl TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
-dnl PERFORMANCE OF THIS SOFTWARE.
-dnl
-dnl Process this file with autoconf to create configure.
+# Copyright © 2003 Keith Packard
+#
+# Permission to use, copy, modify, distribute, and sell this software and its
+# documentation for any purpose is hereby granted without fee, provided that
+# the above copyright notice appear in all copies and that both that
+# copyright notice and this permission notice appear in supporting
+# documentation, and that the name of Keith Packard not be used in
+# advertising or publicity pertaining to distribution of the software without
+# specific, written prior permission. Keith Packard makes no
+# representations about the suitability of this software for any purpose. It
+# is provided "as is" without express or implied warranty.
+#
+# KEITH PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+# INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+# EVENT SHALL KEITH PACKARD BE LIABLE FOR ANY SPECIAL, 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.
+#
+# Initialize Autoconf
AC_PREREQ([2.60])
-
-AC_INIT([libXfont],
- [1.4.3],
- [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],
- libXfont)
-# Autoheader generates config.h.in. No new lines allowed in the list.
+#
+# This is the package version number, not the shared library
+# version. This same version number must appear in Xfont.h
+# Yes, it is a pain to synchronize version numbers. Unfortunately, it's
+# not possible to extract the version number here from Xfont.h
+#
+AC_INIT([libXfont], [1.4.3],
+ [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], [libXfont])
+AC_CONFIG_SRCDIR([Makefile.am])
AC_CONFIG_HEADERS([config.h include/X11/fonts/fontconf.h])
-dnl
-dnl This is the package version number, not the shared library
-dnl version. This same version number must appear in Xfont.h
-dnl Yes, it is a pain to synchronize version numbers. Unfortunately, it's
-dnl not possible to extract the version number here from Xfont.h
-dnl
+
+# Initialize Automake
AM_INIT_AUTOMAKE([foreign dist-bzip2])
AM_MAINTAINER_MODE
+# Initialize libtool
+AC_PROG_LIBTOOL
+
# Require xorg-macros minimum of 1.10 for DocBook XML documentation
m4_ifndef([XORG_MACROS_VERSION],
[m4_fatal([must install xorg-macros 1.10 or later before running autoconf/autogen])])
@@ -47,16 +49,16 @@ XORG_WITH_XMLTO(0.0.20)
XORG_WITH_FOP
XORG_CHECK_SGML_DOCTOOLS(1.5)
-# Check for progs
-AC_PROG_LIBTOOL
-dnl If the first PKG_CHECK_MODULES appears inside a conditional, pkg-config
-dnl must first be located explicitly.
-PKG_PROG_PKG_CONFIG
-
-# Look for headers
+# Checks for header files.
AC_CHECK_HEADERS([endian.h poll.h sys/poll.h])
+
+# Checks for library functions.
AC_CHECK_FUNCS([poll])
+# If the first PKG_CHECK_MODULES appears inside a conditional, pkg-config
+# must first be located explicitly.
+PKG_PROG_PKG_CONFIG
+
#
# select libraries to include
#
@@ -199,14 +201,15 @@ case $host_os in
esac
AC_SUBST([OS_CFLAGS])
-AC_OUTPUT([Makefile
- doc/Makefile
- src/Makefile
- src/fontfile/Makefile
- src/FreeType/Makefile
- src/builtins/Makefile
- src/bitmap/Makefile
- src/fc/Makefile
- src/util/Makefile
- src/stubs/Makefile
- xfont.pc])
+AC_CONFIG_FILES([Makefile
+ doc/Makefile
+ src/Makefile
+ src/fontfile/Makefile
+ src/FreeType/Makefile
+ src/builtins/Makefile
+ src/bitmap/Makefile
+ src/fc/Makefile
+ src/util/Makefile
+ src/stubs/Makefile
+ xfont.pc])
+AC_OUTPUT
commit 9ea1790d61bd135714c40e5089ecb1effa1dbcc0
Author: Gaetan Nadon <memsize@videotron.ca>
Date: Thu Jan 27 18:50:15 2011 -0500
config: remove AC_PROG_CC as it overrides AC_PROG_C_C99
XORG_STRICT_OPTION from XORG_DEFAULT_OPTIONS calls
AC_PROG_C_C99. This sets gcc with -std=gnu99.
If AC_PROG_CC macro is called afterwards, it resets CC to gcc.
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
diff --git a/configure.ac b/configure.ac
index 8389dfc..d119528 100644
--- a/configure.ac
+++ b/configure.ac
@@ -48,7 +48,6 @@ XORG_WITH_FOP
XORG_CHECK_SGML_DOCTOOLS(1.5)
# Check for progs
-AC_PROG_CC
AC_PROG_LIBTOOL
dnl If the first PKG_CHECK_MODULES appears inside a conditional, pkg-config
dnl must first be located explicitly.
commit 4e0c6c45d819befdd9315d6282b957f7cfec3ae2
Author: Paulo Zanoni <pzanoni@mandriva.com>
Date: Thu Dec 16 14:09:12 2010 -0200
Use docbookx.dtd version 4.3 for all docs
Signed-off-by: Paulo Zanoni <pzanoni@mandriva.com>
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
diff --git a/doc/fontlib.xml b/doc/fontlib.xml
index f2e4811..86cef8d 100644
--- a/doc/fontlib.xml
+++ b/doc/fontlib.xml
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
- "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" >
+<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
+ "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" >
<!-- lifted from troff+ms by doclifter -->
<!-- previous version was in xorg-docs/specs/Xserver/fontlib.ms -->
commit 01c30845853f5a8114467185d76274ae9bbff091
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sun Nov 21 11:35:20 2010 -0800
Sun's copyrights belong to Oracle now
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
diff --git a/COPYING b/COPYING
index b271bf3..d43a6f8 100644
--- a/COPYING
+++ b/COPYING
@@ -1,5 +1,5 @@
Copyright © 2007 Red Hat, Inc
-Copyright © 2008,2009 Sun Microsystems, Inc. All rights reserved.
+Copyright (c) 2008, 2009, 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"),
diff --git a/src/fontfile/bunzip2.c b/src/fontfile/bunzip2.c
index d927bd5..007fc7c 100644
--- a/src/fontfile/bunzip2.c
+++ b/src/fontfile/bunzip2.c
@@ -3,7 +3,7 @@
intended for inclusion in X11 public releases. */
/*
- * Copyright © 2008 Sun Microsystems, Inc. All rights reserved.
+ * Copyright (c) 2008, 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"),
commit 72ade58381a49514f2b29065ba33a464b7efc3d0
Author: Gaetan Nadon <memsize@videotron.ca>
Date: Tue Nov 9 13:04:51 2010 -0500
config: HTML file generation: use the installed copy of xorg.css
Currenlty the xorg.css file is copied in each location
where a DocBook/XML file resides. This produces about
70 copies in the $(docdir) install tree.
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
diff --git a/doc/.gitignore b/doc/.gitignore
index 12fe512..6fa5c31 100644
--- a/doc/.gitignore
+++ b/doc/.gitignore
@@ -1,6 +1,4 @@
-# Add & Override for this directory and it's subdirectories
*.html
*.ps
*.pdf
*.txt
-*.css
diff --git a/doc/Makefile.am b/doc/Makefile.am
index dc3f0a6..d2c4724 100644
--- a/doc/Makefile.am
+++ b/doc/Makefile.am
@@ -39,11 +39,8 @@ noinst_DATA += $(doc_sources:.xml=.txt)
endif
if HAVE_STYLESHEETS
-XMLTO_FLAGS = -m $(XSL_STYLESHEET)
-
-noinst_DATA += xorg.css
-xorg.css: $(STYLESHEET_SRCDIR)/xorg.css
- $(AM_V_GEN)cp -pf $(STYLESHEET_SRCDIR)/xorg.css $@
+XMLTO_FLAGS = -m $(XSL_STYLESHEET) \
+ --stringparam html.stylesheet=$(STYLESHEET_SRCDIR)/xorg.css
endif
CLEANFILES = $(noinst_DATA)
Reply to: