mirror of
https://github.com/bellard/quickjs.git
synced 2025-09-30 15:04:24 +03:00
added missing 'Unknown' unicode Script
This commit is contained in:
20
libunicode.c
20
libunicode.c
@@ -1285,8 +1285,6 @@ int unicode_script(CharRange *cr,
|
||||
script_idx = unicode_find_name(unicode_script_name_table, script_name);
|
||||
if (script_idx < 0)
|
||||
return -2;
|
||||
/* Note: we remove the "Unknown" Script */
|
||||
script_idx += UNICODE_SCRIPT_Unknown + 1;
|
||||
|
||||
is_common = (script_idx == UNICODE_SCRIPT_Common ||
|
||||
script_idx == UNICODE_SCRIPT_Inherited);
|
||||
@@ -1316,17 +1314,21 @@ int unicode_script(CharRange *cr,
|
||||
n |= *p++;
|
||||
n += 96 + (1 << 12);
|
||||
}
|
||||
if (type == 0)
|
||||
v = 0;
|
||||
else
|
||||
v = *p++;
|
||||
c1 = c + n + 1;
|
||||
if (v == script_idx) {
|
||||
if (cr_add_interval(cr1, c, c1))
|
||||
goto fail;
|
||||
if (type != 0) {
|
||||
v = *p++;
|
||||
if (v == script_idx || script_idx == UNICODE_SCRIPT_Unknown) {
|
||||
if (cr_add_interval(cr1, c, c1))
|
||||
goto fail;
|
||||
}
|
||||
}
|
||||
c = c1;
|
||||
}
|
||||
if (script_idx == UNICODE_SCRIPT_Unknown) {
|
||||
/* Unknown is all the characters outside scripts */
|
||||
if (cr_invert(cr1))
|
||||
goto fail;
|
||||
}
|
||||
|
||||
if (is_ext) {
|
||||
/* add the script extensions */
|
||||
|
Reference in New Issue
Block a user