1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 15:07:45 +00:00

AK: Treat empty string as invalid JSON

Previously we would treat the empty string as `null`. This caused
JavaScript like this to fail:
```js
var object = {};
try {
    object = JSON.parse("");
} catch {}
var array = object.array || [];
```
Since `JSON.parse("")` returned null instead of throwing, it would set
`object` to null and then try and use it instead of using the default
backup value.
This commit is contained in:
Luke Wilde 2022-07-10 21:37:28 +01:00 committed by Linus Groh
parent 36c3a0fac2
commit da25ac0d48
3 changed files with 2 additions and 3 deletions

View file

@ -126,7 +126,7 @@ TEST_CASE(json_u64_roundtrip)
TEST_CASE(json_parse_empty_string)
{
auto value = JsonValue::from_string("");
EXPECT_EQ(value.value().is_null(), true);
EXPECT_EQ(value.is_error(), true);
}
TEST_CASE(json_parse_long_decimals)