From f9c878217eef099e1391e2d1445aef2b1942b035 Mon Sep 17 00:00:00 2001 From: Packit Service Date: Dec 09 2020 22:14:40 +0000 Subject: Apply patch 0077-truetype-Fix-loading-of-named-instances.patch patch_name: 0077-truetype-Fix-loading-of-named-instances.patch present_in_specfile: true --- diff --git a/include/freetype/ftmm.h b/include/freetype/ftmm.h index c41b80e..1f48a49 100644 --- a/include/freetype/ftmm.h +++ b/include/freetype/ftmm.h @@ -178,7 +178,7 @@ FT_BEGIN_HEADER /* strid :: The entry in `name' table identifying this instance. */ /* */ /* psid :: The entry in `name' table identifying a PostScript name */ - /* for this instance. */ + /* for this instance. Value 0 indicates a missing entry. */ /* */ typedef struct FT_Var_Named_Style_ { diff --git a/src/truetype/ttgxvar.c b/src/truetype/ttgxvar.c index 0cedb6b..cfb0ed0 100644 --- a/src/truetype/ttgxvar.c +++ b/src/truetype/ttgxvar.c @@ -2136,8 +2136,16 @@ goto Exit; if ( fvar_head.instanceCount && !face->blend->avar_loaded ) + { + FT_ULong offset = FT_STREAM_POS(); + + ft_var_load_avar( face ); + if ( FT_STREAM_SEEK( offset ) ) + goto Exit; + } + ns = mmvar->namedstyle; nsc = face->blend->normalized_stylecoords; for ( i = 0; i < fvar_head.instanceCount; i++, ns++ ) @@ -2154,6 +2162,7 @@ for ( j = 0; j < fvar_head.axisCount; j++, c++ ) *c = FT_GET_LONG(); + /* valid psid values are 6 and [256;32767] */ if ( usePsName ) ns->psid = FT_GET_USHORT(); @@ -2171,7 +2180,7 @@ SFNT_Service sfnt = (SFNT_Service)face->sfnt; FT_Int found, dummy1, dummy2; - FT_UInt strid = 0xFFFFFFFFUL; + FT_UInt strid = ~0U; /* the default instance is missing in array the */