diff options
author | 2022-06-20 21:32:27 -0700 | |
---|---|---|
committer | 2022-06-22 06:56:47 -0700 | |
commit | 1bc37470422f7f29a83da398d366f42f49463269 (patch) | |
tree | e8cbe0fa3edac52d2448d929cfa35b30bff6a810 | |
parent | 689666f17c5165e4034ee660d6dfb3ae0a8eddcb (diff) | |
download | bun-1bc37470422f7f29a83da398d366f42f49463269.tar.gz bun-1bc37470422f7f29a83da398d366f42f49463269.tar.zst bun-1bc37470422f7f29a83da398d366f42f49463269.zip |
[JS Parser] Fix undefined memory bug when printing an "cannot be used in strict mode" error message
-rw-r--r-- | src/js_parser.zig | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/js_parser.zig b/src/js_parser.zig index cd5a9df63..859cb4a9b 100644 --- a/src/js_parser.zig +++ b/src/js_parser.zig @@ -9195,8 +9195,9 @@ fn NewParser_( if (why.len == 0) { why = try std.fmt.allocPrint(p.allocator, "This file is implicitly in strict mode because of the \"{s}\" keyword here", .{p.source.textForRange(where)}); } - - try p.log.addRangeErrorWithNotes(p.source, r, try std.fmt.allocPrint(p.allocator, "{s} cannot be used in strict mode", .{text}), &([_]logger.Data{logger.rangeData(p.source, where, why)})); + var notes = try p.allocator.alloc(logger.Data, 1); + notes[0] = logger.rangeData(p.source, where, why); + try p.log.addRangeErrorWithNotes(p.source, r, try std.fmt.allocPrint(p.allocator, "{s} cannot be used in strict mode", .{text}), notes); } else if (!can_be_transformed and p.isStrictModeOutputFormat()) { try p.log.addRangeError(p.source, r, try std.fmt.allocPrint(p.allocator, "{s} cannot be used with esm due to strict mode", .{text})); } |