Files
bun.sh/test/regression/issue
Claude Bot f3f62a52b4 fix(fs): throw early for strings exceeding WebKit's 2GB limit
Fixes #2570

Previously, `readFileSync` with string encodings (utf8, ascii, etc.) only
checked against `synthetic_allocation_limit` (~4GB), but WebKit's
`WTF::String::MaxLength` is only ~2GB (`std::numeric_limits<int32_t>::max()`).

This mismatch caused large files (>2GB) to be silently truncated when
converted to strings, resulting in confusing "JSON Parse error: Unexpected EOF"
errors instead of a clear memory error.

The fix:
- Changes `string_allocation_limit` default from `maxInt(u32)` to `maxInt(i32)`
  to match WebKit's String::MaxLength
- Updates `shouldThrowOutOfMemoryEarlyForJavaScript` to use the appropriate
  limit based on encoding type (buffer encoding uses higher typed array limit,
  string encodings use the WebKit string limit)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-27 07:32:23 +00:00
..
2025-08-06 06:44:46 -07:00
2025-01-28 17:23:57 -08:00
2025-06-03 13:23:12 -07:00
2025-06-03 23:41:37 -07:00
2025-01-17 22:08:07 -08:00
2024-06-14 01:50:36 -07:00
2025-03-03 21:38:05 -08:00
2025-05-26 21:18:22 -07:00
2025-07-03 01:06:22 -07:00
2025-07-23 22:31:42 -07:00
2025-10-20 14:07:31 -07:00
2025-11-05 22:04:14 -08:00
2025-11-05 22:04:14 -08:00
2025-11-19 21:17:51 -08:00
2026-01-13 22:38:31 -08:00
2025-07-20 23:02:10 -07:00