Psst.. new poll here.
Psst.. new forums here.
Microsoft is blocking us again (TY IP Reputation!) so just use oauth login instead. :)
Paste
Pasted as C by Huulivoide ( 15 years ago )
-hb_language_from_string (const char *str)
+hb_language_from_string (const char *str, int len)
{
- if (!str || !*str)
+ if (!str || !len || !*str)
return HB_LANGUAGE_INVALID;
+ char strbuf[32];
+ if (len >= 0) {
+ len = MIN (len, (int) sizeof (strbuf) - 1);
+ str = (char *) memcpy (strbuf, str, len);
+ strbuf[len] = '�';
+ }
+
hb_language_item_t *item = langs.find_or_insert (str, langs.lock);
return likely (item) ? item->lang : HB_LANGUAGE_INVALID;
@@ -197,7 +206,7 @@ hb_language_get_default (void)
/* I hear that setlocale() doesn't honor env vars on Windows,
* but for now we ignore that. */
- default_language = hb_language_from_string (setlocale (LC_CTYPE, NULL));
+ default_language = hb_language_from_string (setlocale (LC_CTYPE, NULL), -1);
}
Revise this Paste