diff --git a/src/autofit/afranges.c b/src/autofit/afranges.c index 64edc79cb..13c221364 100644 --- a/src/autofit/afranges.c +++ b/src/autofit/afranges.c @@ -179,34 +179,6 @@ }; - const AF_Script_UniRangeRec af_khmr_uniranges[] = - { - AF_UNIRANGE_REC( 0x1780UL, 0x17FFUL ), /* Khmer */ - AF_UNIRANGE_REC( 0UL, 0UL ) - }; - - const AF_Script_UniRangeRec af_khmr_nonbase_uniranges[] = - { - AF_UNIRANGE_REC( 0x17B7UL, 0x17BDUL ), - AF_UNIRANGE_REC( 0x17C6UL, 0x17C6UL ), - AF_UNIRANGE_REC( 0x17C9UL, 0x17D3UL ), - AF_UNIRANGE_REC( 0x17DDUL, 0x17DDUL ), - AF_UNIRANGE_REC( 0UL, 0UL ) - }; - - - const AF_Script_UniRangeRec af_khms_uniranges[] = - { - AF_UNIRANGE_REC( 0x19E0UL, 0x19FFUL ), /* Khmer Symbols */ - AF_UNIRANGE_REC( 0UL, 0UL ) - }; - - const AF_Script_UniRangeRec af_khms_nonbase_uniranges[] = - { - AF_UNIRANGE_REC( 0UL, 0UL ) - }; - - const AF_Script_UniRangeRec af_lao_uniranges[] = { AF_UNIRANGE_REC( 0x0E80UL, 0x0EFFUL ), /* Lao */ diff --git a/src/tools/ftfuzzer/ftfuzzer.cc b/src/tools/ftfuzzer/ftfuzzer.cc index 45d0137ec..e5ab293f1 100644 --- a/src/tools/ftfuzzer/ftfuzzer.cc +++ b/src/tools/ftfuzzer/ftfuzzer.cc @@ -3,9 +3,6 @@ # error "a C++11 compiler is needed" #endif -#include -#include - #include #include @@ -48,59 +45,6 @@ using namespace std; FT_Global global_ft; - static int - archive_read_entry_data( struct archive *ar, vector *vw ) - { - int r; - const FT_Byte *buff; - size_t size; - int64_t offset; - - for (;;) { - r = archive_read_data_block( ar, reinterpret_cast(&buff), &size, &offset ); - if (r == ARCHIVE_EOF) - return (ARCHIVE_OK); - if (r != ARCHIVE_OK) - return (r); - vw->insert(vw->end(), buff, buff + size); - } - } - - static vector> - parse_data( const uint8_t* data, - size_t size ) - { - struct archive_entry *entry; - int r; - vector> files; - - unique_ptr a( archive_read_new(), archive_read_free ); - archive_read_support_format_tar(a.get()); - - // The need for the const_cast was removed with libarchive be4d4ddcfca77f6e43753156eaa919f4d25ed903 - if (!(r = archive_read_open_memory( a.get(), const_cast(static_cast(data)), size ))) - { - unique_ptr a_open( a.get(), archive_read_close ); - for (;;) { - r = archive_read_next_header( a_open.get(), &entry ); - if (r == ARCHIVE_EOF) - break; - if (r != ARCHIVE_OK) - break; - vector entry_data; - r = archive_read_entry_data( a.get(), &entry_data ); - if (r != ARCHIVE_OK) - break; - files.push_back( move( entry_data ) ); - } - } - - if (files.size() == 0) - files.emplace_back(data, data + size); - - return files; - } - static void setIntermediateAxis( FT_Face face ) @@ -141,8 +85,6 @@ using namespace std; long size = (long)size_; - const vector>& files = parse_data( data, size ); - FT_Face face; FT_Int32 load_flags = FT_LOAD_DEFAULT; #if 0 @@ -157,7 +99,7 @@ using namespace std; // more than a single font. // get number of faces - if ( FT_New_Memory_Face( library, files[0].data(), files[0].size(), -1, &face ) ) + if ( FT_New_Memory_Face( library, data, size, -1, &face ) ) return 0; long num_faces = face->num_faces; FT_Done_Face( face ); @@ -169,8 +111,8 @@ using namespace std; { // get number of instances if ( FT_New_Memory_Face( library, - files[0].data(), - files[0].size(), + data, + size, -( face_index + 1 ), &face ) ) continue; @@ -183,23 +125,12 @@ using namespace std; instance_index++ ) { if ( FT_New_Memory_Face( library, - files[0].data(), - files[0].size(), + data, + size, ( instance_index << 16 ) + face_index, &face ) ) continue; - for ( long files_index = 1; - files_index < files.size(); - files_index++) - { - FT_Open_Args open_args = {}; - open_args.flags = FT_OPEN_MEMORY; - open_args.memory_base = files[files_index].data(); - open_args.memory_size = files[files_index].size(); - FT_Attach_Stream( face, &open_args ); - } - // loop over all bitmap stroke sizes // and an arbitrary size for outlines for ( long fixed_sizes_index = 0;