[arch-commits] Commit in lib32-freetype2/trunk (2 files)
Jan Steffens
heftig at archlinux.org
Fri Jan 2 01:56:36 UTC 2015
Date: Friday, January 2, 2015 @ 02:56:36
Author: heftig
Revision: 125149
2.5.5
Modified:
lib32-freetype2/trunk/PKGBUILD
Deleted:
lib32-freetype2/trunk/0001-pcf-Fix-Savannah-bug-43774.patch
---------------------------------------+
0001-pcf-Fix-Savannah-bug-43774.patch | 125 --------------------------------
PKGBUILD | 15 +--
2 files changed, 5 insertions(+), 135 deletions(-)
Deleted: 0001-pcf-Fix-Savannah-bug-43774.patch
===================================================================
--- 0001-pcf-Fix-Savannah-bug-43774.patch 2015-01-02 00:49:36 UTC (rev 125148)
+++ 0001-pcf-Fix-Savannah-bug-43774.patch 2015-01-02 01:56:36 UTC (rev 125149)
@@ -1,125 +0,0 @@
-From 74af85c4b62b35e55b0ce9dec55ee10cbc4962a2 Mon Sep 17 00:00:00 2001
-From: Werner Lemberg <wl at gnu.org>
-Date: Mon, 8 Dec 2014 16:01:50 +0100
-Subject: [PATCH] [pcf] Fix Savannah bug #43774.
-
-Work around `features' of X11's `pcfWriteFont' and `pcfReadFont'
-functions. Since the PCF format doesn't have an official
-specification, we have to exactly follow these functions' behaviour.
-
-The problem was unveiled with a patch from 2014-11-06, fixing issue #43547.
-
-* src/pcf/pcfread.c (pcf_read_TOC): Don't check table size for last
-element. Instead, assign real size.
----
- ChangeLog | 14 ++++++++++++++
- src/pcf/pcfread.c | 54 +++++++++++++++++++++++++++++++++++++++++++-----------
- 2 files changed, 57 insertions(+), 11 deletions(-)
-
-diff --git a/src/pcf/pcfread.c b/src/pcf/pcfread.c
-index 998cbed..e3caf82 100644
---- a/src/pcf/pcfread.c
-+++ b/src/pcf/pcfread.c
-@@ -2,7 +2,7 @@
-
- FreeType font driver for pcf fonts
-
-- Copyright 2000-2010, 2012, 2013 by
-+ Copyright 2000-2010, 2012-2014 by
- Francesco Zappa Nardelli
-
- Permission is hereby granted, free of charge, to any person obtaining a copy
-@@ -78,7 +78,7 @@ THE SOFTWARE.
- FT_FRAME_START( 16 ),
- FT_FRAME_ULONG_LE( type ),
- FT_FRAME_ULONG_LE( format ),
-- FT_FRAME_ULONG_LE( size ),
-+ FT_FRAME_ULONG_LE( size ), /* rounded up to a multiple of 4 */
- FT_FRAME_ULONG_LE( offset ),
- FT_FRAME_END
- };
-@@ -95,9 +95,11 @@ THE SOFTWARE.
- FT_Memory memory = FT_FACE( face )->memory;
- FT_UInt n;
-
-+ FT_ULong size;
-
-- if ( FT_STREAM_SEEK ( 0 ) ||
-- FT_STREAM_READ_FIELDS ( pcf_toc_header, toc ) )
-+
-+ if ( FT_STREAM_SEEK( 0 ) ||
-+ FT_STREAM_READ_FIELDS( pcf_toc_header, toc ) )
- return FT_THROW( Cannot_Open_Resource );
-
- if ( toc->version != PCF_FILE_VERSION ||
-@@ -154,14 +156,35 @@ THE SOFTWARE.
- break;
- }
-
-- /* we now check whether the `size' and `offset' values are reasonable: */
-- /* `offset' + `size' must not exceed the stream size */
-+ /*
-+ * We now check whether the `size' and `offset' values are reasonable:
-+ * `offset' + `size' must not exceed the stream size.
-+ *
-+ * Note, however, that X11's `pcfWriteFont' routine (used by the
-+ * `bdftopcf' program to create PDF font files) has two special
-+ * features.
-+ *
-+ * - It always assigns the accelerator table a size of 100 bytes in the
-+ * TOC, regardless of its real size, which can vary between 34 and 72
-+ * bytes.
-+ *
-+ * - Due to the way the routine is designed, it ships out the last font
-+ * table with its real size, ignoring the TOC's size value. Since
-+ * the TOC size values are always rounded up to a multiple of 4, the
-+ * difference can be up to three bytes for all tables except the
-+ * accelerator table, for which the difference can be as large as 66
-+ * bytes.
-+ *
-+ */
-+
- tables = face->toc.tables;
-- for ( n = 0; n < toc->count; n++ )
-+ size = stream->size;
-+
-+ for ( n = 0; n < toc->count - 1; n++ )
- {
- /* we need two checks to avoid overflow */
-- if ( ( tables->size > stream->size ) ||
-- ( tables->offset > stream->size - tables->size ) )
-+ if ( ( tables->size > size ) ||
-+ ( tables->offset > size - tables->size ) )
- {
- error = FT_THROW( Invalid_Table );
- goto Exit;
-@@ -169,6 +192,15 @@ THE SOFTWARE.
- tables++;
- }
-
-+ /* no check of `tables->size' for last table element ... */
-+ if ( ( tables->offset > size ) )
-+ {
-+ error = FT_THROW( Invalid_Table );
-+ goto Exit;
-+ }
-+ /* ... instead, we adjust `tables->size' to the real value */
-+ tables->size = size - tables->offset;
-+
- #ifdef FT_DEBUG_LEVEL_TRACE
-
- {
-@@ -733,8 +765,8 @@ THE SOFTWARE.
-
- FT_TRACE4(( " number of bitmaps: %d\n", nbitmaps ));
-
-- /* XXX: PCF_Face->nmetrics is singed FT_Long, see pcf.h */
-- if ( face->nmetrics < 0 || nbitmaps != ( FT_ULong )face->nmetrics )
-+ /* XXX: PCF_Face->nmetrics is signed FT_Long, see pcf.h */
-+ if ( face->nmetrics < 0 || nbitmaps != (FT_ULong)face->nmetrics )
- return FT_THROW( Invalid_File_Format );
-
- if ( FT_NEW_ARRAY( offsets, nbitmaps ) )
---
-2.1.3
-
Modified: PKGBUILD
===================================================================
--- PKGBUILD 2015-01-02 00:49:36 UTC (rev 125148)
+++ PKGBUILD 2015-01-02 01:56:36 UTC (rev 125149)
@@ -4,8 +4,8 @@
_pkgbasename=freetype2
pkgname=lib32-$_pkgbasename
-pkgver=2.5.4
-pkgrel=3
+pkgver=2.5.5
+pkgrel=1
pkgdesc="TrueType font rendering library (32-bit)"
arch=(x86_64)
license=('GPL')
@@ -18,15 +18,13 @@
freetype-2.2.1-enable-valid.patch
freetype-2.5.1-enable-spr.patch
freetype-2.5.1-enable-sph.patch
- env_FT2_SUBPIXEL_HINTING.diff
- 0001-pcf-Fix-Savannah-bug-43774.patch)
-sha1sums=('f30b929e2edc5d7ca64c1ccc65f0c2068e84c5e2'
+ env_FT2_SUBPIXEL_HINTING.diff)
+sha1sums=('7b7460ef51a8fdb17baae53c6658fc1ad000a1c2'
'SKIP'
'f279d922a873d62a8af50bfc873051839d194dca'
'13ee8d558593db991ad29fa090b461f914536104'
'c31fa3d342ead56f3acfa1f267b474a7686d0014'
- '78322bee05f013cd76487439ddac0cae50596db4'
- '16057f51b084e9ce5c614a4add41b532d32648b4')
+ '78322bee05f013cd76487439ddac0cae50596db4')
validpgpkeys=('58E0C111E39F5408C5D3EC76C1A60EACE707FDA5')
prepare() {
@@ -40,9 +38,6 @@
# Hopefully just a temporary measure until fontconfig picks up
# the necessary configurables.
patch -Np1 -i "${srcdir}/env_FT2_SUBPIXEL_HINTING.diff"
-
- # http://savannah.nongnu.org/bugs/index.php?43774
- patch -Np1 -i "${srcdir}/0001-pcf-Fix-Savannah-bug-43774.patch"
}
build() {
More information about the arch-commits
mailing list