Adjust loop counter maximum for TrueType fonts

Resolves: #1456585
This commit is contained in:
Marek Kasik 2017-06-01 14:08:37 +02:00
parent 0c07bf59f2
commit 4f731bf526
2 changed files with 44 additions and 1 deletions

View File

@ -0,0 +1,36 @@
From 8d435c463d22f6de35015b244d6f9bb433beb7e6 Mon Sep 17 00:00:00 2001
From: Werner Lemberg <wl@gnu.org>
Date: Thu, 1 Jun 2017 07:09:44 +0200
Subject: [PATCH] * src/truetype/ttinterp.c (TT_RunIns): Adjust loop counter
again.
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Problem reported by Marek Kašík <mkasik@redhat.com>.
The problematic font that exceeds the old limit is Padauk-Bold,
version 3.002, containing bytecode generated by a buggy version of
ttfautohint.
---
ChangeLog | 10 ++++++++++
src/truetype/ttinterp.c | 3 +--
2 files changed, 11 insertions(+), 2 deletions(-)
diff --git a/src/truetype/ttinterp.c b/src/truetype/ttinterp.c
index 0c48c256..775d1104 100644
--- a/src/truetype/ttinterp.c
+++ b/src/truetype/ttinterp.c
@@ -7649,8 +7649,7 @@
FT_MAX( 50,
exc->cvtSize / 10 );
else
- exc->loopcall_counter_max = FT_MAX( 100,
- 10 * exc->cvtSize );
+ exc->loopcall_counter_max = 300 + 8 * exc->cvtSize;
/* as a protection against an unreasonable number of CVT entries */
/* we assume at most 100 control values per glyph for the counter */
--
2.13.0

View File

@ -7,7 +7,7 @@
Summary: A free and portable font rendering engine
Name: freetype
Version: 2.8
Release: 2%{?dist}
Release: 3%{?dist}
License: (FTL or GPLv2+) and BSD and MIT and Public Domain and zlib with acknowledgement
Group: System Environment/Libraries
URL: http://www.freetype.org
@ -27,6 +27,8 @@ Patch3: freetype-2.6.5-libtool.patch
Patch4: freetype-2.8-pcf-encoding.patch
Patch5: freetype-2.8-loop-counter.patch
BuildRequires: libX11-devel
BuildRequires: libpng-devel
BuildRequires: zlib-devel
@ -86,6 +88,7 @@ popd
%patch3 -p1 -b .libtool
%patch4 -p1 -b .pcf-encoding
%patch5 -p1 -b .loop-counter
%build
@ -199,6 +202,10 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/*.{a,la}
%{_mandir}/man1/*
%changelog
* Thu Jun 1 2017 Marek Kasik <mkasik@redhat.com> - 2.8-3
- Adjust loop counter maximum for TrueType fonts
- Resolves: #1456585
* Wed May 24 2017 Marek Kasik <mkasik@redhat.com> - 2.8-2
- Accept ISO646.1991-IRV as a Unicode charmap in PCF and BDF drivers
- Resolves: #1451795