hb_font_funcs_t _hb_font_funcs_nil = {
HB_REFERENCE_COUNT_INVALID, /* ref_count */
-
TRUE, /* immutable */
-
{
- hb_font_get_glyph_nil,
- hb_font_get_contour_point_nil,
- hb_font_get_glyph_metrics_nil,
- hb_font_get_kerning_nil
+ hb_font_get_glyph_nil,
+ hb_font_get_contour_point_nil,
+ hb_font_get_glyph_metrics_nil,
+ hb_font_get_kerning_nil
}
};
if (!HB_OBJECT_DO_CREATE (hb_font_funcs_t, ffuncs))
return &_hb_font_funcs_nil;
+ ffuncs->v = _hb_font_funcs_nil.v;
+
return ffuncs;
}
if (!HB_OBJECT_DO_CREATE (hb_font_funcs_t, ffuncs))
return &_hb_font_funcs_nil;
- *ffuncs = *other_ffuncs;
-
- /* re-init refcount */
- HB_OBJECT_DO_INIT (ffuncs);
- ffuncs->immutable = FALSE;
+ ffuncs->v = other_ffuncs->v;
return ffuncs;
}
hb_unicode_funcs_t _hb_unicode_funcs_nil = {
HB_REFERENCE_COUNT_INVALID, /* ref_count */
-
TRUE, /* immutable */
-
{
hb_unicode_get_general_category_nil,
hb_unicode_get_combining_class_nil,
if (!HB_OBJECT_DO_CREATE (hb_unicode_funcs_t, ufuncs))
return &_hb_unicode_funcs_nil;
- *ufuncs = _hb_unicode_funcs_nil;
- HB_OBJECT_DO_INIT (ufuncs);
+ ufuncs->v = _hb_unicode_funcs_nil.v;
return ufuncs;
}
if (!HB_OBJECT_DO_CREATE (hb_unicode_funcs_t, ufuncs))
return &_hb_unicode_funcs_nil;
- *ufuncs = *other_ufuncs;
- HB_OBJECT_DO_INIT (ufuncs);
- ufuncs->immutable = FALSE;
+ ufuncs->v = other_ufuncs->v;
return ufuncs;
}