rewind (fp);
}
- bool success = false;
if (file_length > 0) {
buffer = (char *) calloc (file_length + 1, sizeof(char));
if (fread (buffer, 1, file_length, fp) == file_length) {
static hb_face_t *
open_font (const char *font_path)
{
- gchar *path = g_test_build_filename(G_TEST_DIST, font_path, NULL);
+#if GLIB_CHECK_VERSION(2,37,2)
+ gchar* path = g_test_build_filename(G_TEST_DIST, font_path, NULL);
+#else
+ gchar* path = g_strdup(fontFile);
+#endif
size_t length;
char *font_data = read_file(path, &length);
{
hb_face_t *face_abc = open_font("fonts/Roboto-Regular.abc.ttf");
hb_face_t *face_ac = open_font("fonts/Roboto-Regular.ac.ttf");
+ hb_face_t *face_abc_subset;
+ hb_blob_t *glyf_expected_blob;
+ hb_blob_t *glyf_actual_blob;
+ hb_set_t *codepoints = hb_set_create();
+ hb_subset_profile_t *profile = hb_subset_profile_create();
+ hb_subset_input_t *input = hb_subset_input_create (codepoints);
g_assert (face_abc);
g_assert (face_ac);
- hb_set_t *codepoints = hb_set_create();
hb_set_add (codepoints, 97);
hb_set_add (codepoints, 99);
- hb_subset_profile_t *profile = hb_subset_profile_create();
- hb_subset_input_t *input = hb_subset_input_create (codepoints);
-
- hb_face_t *face_abc_subset = hb_subset (face_abc, profile, input);
+ face_abc_subset = hb_subset (face_abc, profile, input);
g_assert (face_abc_subset);
- hb_blob_t *glyf_expected_blob = hb_face_reference_table (face_ac, HB_TAG('g','l','y','f'));
- hb_blob_t *glyf_actual_blob = hb_face_reference_table (face_abc_subset, HB_TAG('g','l','y','f'));
+ glyf_expected_blob = hb_face_reference_table (face_ac, HB_TAG('g','l','y','f'));
+ glyf_actual_blob = hb_face_reference_table (face_abc_subset, HB_TAG('g','l','y','f'));
- int expected_length, actual_length;
// TODO(grieger): Uncomment below once this actually works.
+ //int expected_length, actual_length;
// g_assert_cmpmem(hb_blob_get_data (glyf_expected_blob, &expected_length), expected_length,
// hb_blob_get_data (glyf_actual_blob, &actual_length), actual_length);
hb_blob_destroy (glyf_actual_blob);
hb_blob_destroy (glyf_expected_blob);
+
hb_subset_input_destroy (input);
hb_subset_profile_destroy (profile);
hb_set_destroy (codepoints);