Commit 91a7fae777fb0ce1e53411cffa1cd310feaa9d00

Dominik Röttsches 2022-09-05T15:49:27

[sfnt] Handle variable `COLR` v1 fonts without delta set index map Fixes #1178. * src/sfnt/ttcolr.c (get_deltas_for_var_index_base): Set outer index to 0 and inner index to the delta index when retrieving deltas if the `COLR` table has no delta set index map.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
diff --git a/src/sfnt/ttcolr.c b/src/sfnt/ttcolr.c
index ad0f127..b432161 100644
--- a/src/sfnt/ttcolr.c
+++ b/src/sfnt/ttcolr.c
@@ -604,9 +604,8 @@
       }
       else
       {
-        /* TODO: Direct lookup case not implemented or tested yet. */
-        FT_ASSERT( 0 );
-        return 0;
+        outer_index = 0;
+        inner_index = loop_var_index;
       }
 
       deltas[i] = mm->get_item_delta( FT_FACE( face ), &colr->var_store,