Rename HB_TAG_STR() to HB_TAG_CHAR4()
The problem with HB_TAG_STR() was that it expected a string of size 4 exactly, and unlike hb_tag_from_string() it doesn't pad the tag with space characters. So, the new name is more appropriate.
This commit is contained in:
parent
9faa980067
commit
07233581c9
@ -40,7 +40,7 @@ hb_tag_from_string (const char *s)
|
|||||||
for (; i < 4; i++)
|
for (; i < 4; i++)
|
||||||
tag[i] = ' ';
|
tag[i] = ' ';
|
||||||
|
|
||||||
return HB_TAG_STR (tag);
|
return HB_TAG_CHAR4 (tag);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -55,10 +55,10 @@ typedef int hb_bool_t;
|
|||||||
|
|
||||||
typedef uint32_t hb_tag_t;
|
typedef uint32_t hb_tag_t;
|
||||||
#define HB_TAG(a,b,c,d) ((hb_tag_t)((((uint8_t)(a))<<24)|(((uint8_t)(b))<<16)|(((uint8_t)(c))<<8)|((uint8_t)(d))))
|
#define HB_TAG(a,b,c,d) ((hb_tag_t)((((uint8_t)(a))<<24)|(((uint8_t)(b))<<16)|(((uint8_t)(c))<<8)|((uint8_t)(d))))
|
||||||
#define HB_TAG_STR(s) (HB_TAG(((const char *) s)[0], \
|
#define HB_TAG_CHAR4(s) (HB_TAG(((const char *) s)[0], \
|
||||||
((const char *) s)[1], \
|
((const char *) s)[1], \
|
||||||
((const char *) s)[2], \
|
((const char *) s)[2], \
|
||||||
((const char *) s)[3]))
|
((const char *) s)[3]))
|
||||||
#define HB_TAG_NONE HB_TAG(0,0,0,0)
|
#define HB_TAG_NONE HB_TAG(0,0,0,0)
|
||||||
|
|
||||||
hb_tag_t hb_tag_from_string (const char *s);
|
hb_tag_t hb_tag_from_string (const char *s);
|
||||||
|
@ -645,7 +645,7 @@ hb_ot_tag_from_language (hb_language_t language)
|
|||||||
tag[i] = TO_UPPER (lang_str[i]);
|
tag[i] = TO_UPPER (lang_str[i]);
|
||||||
for (; i < 4; i++)
|
for (; i < 4; i++)
|
||||||
tag[i] = ' ';
|
tag[i] = ' ';
|
||||||
return HB_TAG_STR (tag);
|
return HB_TAG_CHAR4 (tag);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* find a language matching in the first component */
|
/* find a language matching in the first component */
|
||||||
|
@ -85,7 +85,7 @@ test_types_tag (void)
|
|||||||
g_assert_cmphex (HB_TAG_NONE, ==, 0);
|
g_assert_cmphex (HB_TAG_NONE, ==, 0);
|
||||||
g_assert_cmphex (HB_TAG ('a','B','c','D'), ==, 0x61426344);
|
g_assert_cmphex (HB_TAG ('a','B','c','D'), ==, 0x61426344);
|
||||||
|
|
||||||
g_assert_cmphex (HB_TAG_STR ("aBcD"), ==, 0x61426344);
|
g_assert_cmphex (HB_TAG_CHAR4 ("aBcD"), ==, 0x61426344);
|
||||||
|
|
||||||
g_assert_cmphex (hb_tag_from_string ("aBcDe"), ==, 0x61426344);
|
g_assert_cmphex (hb_tag_from_string ("aBcDe"), ==, 0x61426344);
|
||||||
g_assert_cmphex (hb_tag_from_string ("aBcD"), ==, 0x61426344);
|
g_assert_cmphex (hb_tag_from_string ("aBcD"), ==, 0x61426344);
|
||||||
|
Loading…
Reference in New Issue
Block a user