diff options
author | Behdad Esfahbod <behdad@behdad.org> | 2016-07-16 10:52:38 +0200 |
---|---|---|
committer | Werner Lemberg <wl@gnu.org> | 2016-07-16 10:52:38 +0200 |
commit | 69446ddccec76a1660284ea37e6a89556e06be82 (patch) | |
tree | 261fde8371255d68bdf9da12fd5f375f7df08faf | |
parent | a3b61253a7001a664c68ce0233047bd121330534 (diff) | |
download | freetype2-69446ddccec76a1660284ea37e6a89556e06be82.tar.gz |
[truetype] Make all glyphs in `Zycon' GX font work.
* src/truetype/ttgxvar.c (ft_var_readpackedpoints): Fix boundary
tests.
-rw-r--r-- | ChangeLog | 7 | ||||
-rw-r--r-- | src/truetype/ttgxvar.c | 11 |
2 files changed, 11 insertions, 7 deletions
@@ -1,3 +1,10 @@ +2016-07-16 Behdad Esfahbod <behdad@behdad.org> + + [truetype] Make all glyphs in `Zycon' GX font work. + + * src/truetype/ttgxvar.c (ft_var_readpackedpoints): Fix boundary + tests. + 2016-07-16 Werner Lemberg <wl@gnu.org> [truetype] Fix GX delta tracing. diff --git a/src/truetype/ttgxvar.c b/src/truetype/ttgxvar.c index 1ddaa0d56..7c85d6262 100644 --- a/src/truetype/ttgxvar.c +++ b/src/truetype/ttgxvar.c @@ -174,14 +174,13 @@ first += FT_GET_USHORT(); points[i++] = first; - if ( runcnt < 1 || i + runcnt > n ) - goto Exit; - /* first point not included in run count */ for ( j = 0; j < runcnt; j++ ) { first += FT_GET_USHORT(); points[i++] = first; + if ( i == n ) + break; } } else @@ -189,18 +188,16 @@ first += FT_GET_BYTE(); points[i++] = first; - if ( runcnt < 1 || i + runcnt > n ) - goto Exit; - for ( j = 0; j < runcnt; j++ ) { first += FT_GET_BYTE(); points[i++] = first; + if ( i == n ) + break; } } } - Exit: return points; } |