This commit is contained in:
Emill 2024-07-28 09:30:30 +03:00 committed by GitHub
commit 08aadcb076
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -2964,11 +2964,16 @@ JSAtom JS_NewAtomLen(JSContext *ctx, const char *str, size_t len)
JSValue val;
if (len == 0 || !is_digit(*str)) {
// XXX: this will not work if UTF-8 encoded str contains non ASCII bytes
size_t i;
for(i = 0; i < len; i++) {
if ((uint8_t)str[i] >= 0x80)
goto slow_path;
}
JSAtom atom = __JS_FindAtom(ctx->rt, str, len, JS_ATOM_TYPE_STRING);
if (atom)
return atom;
}
slow_path:
val = JS_NewStringLen(ctx, str, len);
if (JS_IsException(val))
return JS_ATOM_NULL;