aboutsummaryrefslogtreecommitdiff
path: root/libXft
diff options
context:
space:
mode:
Diffstat (limited to 'libXft')
-rw-r--r--libXft/configure.ac77
-rw-r--r--libXft/src/xftcore.c10
-rw-r--r--libXft/src/xftdpy.c2
-rw-r--r--libXft/src/xftdraw.c2
4 files changed, 50 insertions, 41 deletions
diff --git a/libXft/configure.ac b/libXft/configure.ac
index f35eb9109..9b9f6a74d 100644
--- a/libXft/configure.ac
+++ b/libXft/configure.ac
@@ -1,51 +1,49 @@
-dnl
-dnl Copyright © 2003 Keith Packard, Noah Levitt
-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, Noah Levitt
+#
+# 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])
-
-dnl
-dnl This is the package version number, not the shared library
-dnl version. This version number will be substituted into Xft.h
-dnl Please bump the minor library number at each release as well.
-dnl
+#
+# This is the package version number, not the shared library
+# version. This version number will be substituted into Xft.h
+# Please bump the minor library number at each release as well.
+#
AC_INIT([libXft], [2.2.0],
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], [libXft])
-AC_CONFIG_AUX_DIR(.)
+AC_CONFIG_SRCDIR([Makefile.am])
+AC_CONFIG_HEADERS([config.h])
+# Initialize Automake
AM_INIT_AUTOMAKE([foreign dist-bzip2])
AM_MAINTAINER_MODE
+# Initialize libtool
+AC_PROG_LIBTOOL
+
# Require X.Org macros 1.8 or later for MAN_SUBSTS set by XORG_MANPAGE_SECTIONS
m4_ifndef([XORG_MACROS_VERSION],
[m4_fatal([must install xorg-macros 1.8 or later before running autoconf/autogen])])
XORG_MACROS_VERSION(1.8)
XORG_DEFAULT_OPTIONS
-AM_CONFIG_HEADER(config.h)
-
-# checks for progs
-AC_PROG_CC
-AC_PROG_LIBTOOL
-AC_PROG_SED
# Set library version for Xft.h from package version set in AC_INIT
# copied from PACKAGE_VERSION_* settings in XORG_VERSION
@@ -149,7 +147,8 @@ if test "$VERSION" = "" ; then
VERSION=$PACKAGE_VERSION;
fi
-AC_OUTPUT([Makefile
- xft.pc
- src/Makefile
- man/Makefile])
+AC_CONFIG_FILES([Makefile
+ xft.pc
+ src/Makefile
+ man/Makefile])
+AC_OUTPUT
diff --git a/libXft/src/xftcore.c b/libXft/src/xftcore.c
index 3f8710929..a0103cf26 100644
--- a/libXft/src/xftcore.c
+++ b/libXft/src/xftcore.c
@@ -1253,7 +1253,17 @@ XftGlyphFontSpecCore (XftDraw *draw,
if (i)
{
if (g_x1 < x1)
+ {
+ if (g_x1 < 0)
+ {
+ /* do nothing if the given glyphs are out of range */
+ short t = glyphs[i-1].font->max_advance_width
+ + glyphs[i-1].x;
+ if (t < 0 && glyphs[i-1].x > 0)
+ goto bail1;
+ }
x1 = g_x1;
+ }
if (g_y1 < y1)
y1 = g_y1;
if (g_x2 > x2)
diff --git a/libXft/src/xftdpy.c b/libXft/src/xftdpy.c
index 055351586..cd50358d2 100644
--- a/libXft/src/xftdpy.c
+++ b/libXft/src/xftdpy.c
@@ -160,7 +160,7 @@ _XftDisplayInfoGet (Display *dpy, FcBool createIfNecessary)
info->next = _XftDisplayInfo;
_XftDisplayInfo = info;
- info->glyph_memory = NULL;
+ info->glyph_memory = 0;
info->max_glyph_memory = XftDefaultGetInteger (dpy,
XFT_MAX_GLYPH_MEMORY, 0,
XFT_DPY_MAX_GLYPH_MEMORY);
diff --git a/libXft/src/xftdraw.c b/libXft/src/xftdraw.c
index ab5174973..21f8538a3 100644
--- a/libXft/src/xftdraw.c
+++ b/libXft/src/xftdraw.c
@@ -301,7 +301,7 @@ XftDrawSrcPicture (XftDraw *draw, _Xconst XftColor *color)
int i;
XftColor bitmapColor;
- if (!info)
+ if (!info || !info->solidFormat)
return 0;
/*