ref: fcc0ee80e1f31d4f215a08cc7f1066218176495b
parent: b0aacff474a4514566c287001e0fc9918756be32
author: Werner Lemberg <[email protected]>
date: Sat Oct 1 16:12:25 EDT 2016
[sfnt] Disable bitmap strikes if we don't have a bitmap data table. * src/sfnt/ttsbit.c (tt_face_load_sbit): Check whether we have a bitmap data table.
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2016-10-01 Werner Lemberg <[email protected]>
+
+ [sfnt] Disable bitmap strikes if we don't have a bitmap data table.
+
+ * src/sfnt/ttsbit.c (tt_face_load_sbit): Check whether we have
+ a bitmap data table.
+
2016-10-01 Alexei Podtelezhnikov <[email protected]>
[smooth] Remove impossibility.
--- a/src/sfnt/ttsbit.c
+++ b/src/sfnt/ttsbit.c
@@ -190,12 +190,14 @@
break;
default:
+ /* we ignore unknown table formats */
error = FT_THROW( Unknown_File_Format );
break;
}
if ( !error )
- FT_TRACE3(( "sbit_num_strikes: %u\n", face->sbit_num_strikes ));
+ FT_TRACE3(( "tt_face_load_sbit_strikes: found %u strikes\n",
+ face->sbit_num_strikes ));
face->ebdt_start = 0;
face->ebdt_size = 0;
@@ -216,6 +218,15 @@
face->ebdt_start = FT_STREAM_POS();
face->ebdt_size = ebdt_size;
}
+ }
+
+ if ( !face->ebdt_size )
+ {
+ FT_TRACE2(( "tt_face_load_sbit_strikes:"
+ " no embedded bitmap data table found;\n"
+ " "
+ " resetting number of strikes to zero\n" ));
+ face->sbit_num_strikes = 0;
}
return FT_Err_Ok;