[cache] Allow value 0 for face ID.

We never dereference `face_id', and some implementations might use a
running number instead of a pointer.  Additionally, disallowing
value zero was undocumented.

* src/cache/ftccmap.c (FTC_CMapCache_Lookup), src/cache/ftcmanag.c
(FTC_Manager_LookupFace, FTC_Manager_RemoveFaceID): Remove test for
`face_id'.
2.6.5
Werner Lemberg 9 years ago
parent 6e88087d69
commit 7ae9b9996b
  1. 12
      ChangeLog
  2. 3
      src/cache/ftccmap.c
  3. 4
      src/cache/ftcmanag.c

@ -1,3 +1,15 @@
2016-05-07 Werner Lemberg <wl@gnu.org>
[cache] Allow value 0 for face ID.
We never dereference `face_id', and some implementations might use a
running number instead of a pointer. Additionally, disallowing
value zero was undocumented.
* src/cache/ftccmap.c (FTC_CMapCache_Lookup), src/cache/ftcmanag.c
(FTC_Manager_LookupFace, FTC_Manager_RemoveFaceID): Remove test for
`face_id'.
2016-05-05 Alexei Podtelezhnikov <apodtele@gmail.com>
[smooth] More efficient accounting of conic splits and draws.

@ -259,9 +259,6 @@
return 0;
}
if ( !face_id )
return 0;
query.face_id = face_id;
query.cmap_index = (FT_UInt)cmap_index;
query.char_code = char_code;

@ -314,7 +314,7 @@
FTC_MruNode mrunode;
if ( !aface || !face_id )
if ( !aface )
return FT_THROW( Invalid_Argument );
*aface = NULL;
@ -672,7 +672,7 @@
FT_UInt nn;
if ( !manager || !face_id )
if ( !manager )
return;
/* this will remove all FTC_SizeNode that correspond to

Loading…
Cancel
Save