Skip to content

Commit 3e43e1c

Browse files
committed
lib: don't match sourceMappingURL in strings
Prior to this change `sourceMappingURL` in string where being matched by the RegExp which caused sourcemaps not be loaded when using the `--enable-source-maps` flag. This commit changes the RegExp to match the last occurrence. Fixes: #44654
1 parent aa64ff6 commit 3e43e1c

File tree

5 files changed

+23
-2
lines changed

5 files changed

+23
-2
lines changed

lib/internal/source_map/source_map_cache.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,8 @@ const esmSourceMapCache = new SafeMap();
4141
// The generated sources is not mutable, so we can use a Map without memory concerns:
4242
const generatedSourceMapCache = new SafeMap();
4343
const kLeadingProtocol = /^\w+:\/\//;
44-
const kSourceMappingURLMagicComment = /\/[*/]#\s+sourceMappingURL=(?<sourceMappingURL>[^\s]+)/;
45-
const kSourceURLMagicComment = /\/[*/]#\s+sourceURL=(?<sourceURL>[^\s]+)/;
44+
const kSourceMappingURLMagicComment = /\/[*/]#\s+sourceMappingURL=(?<sourceMappingURL>[^\s]+)\s*[*/]\/\s*$/;
45+
const kSourceURLMagicComment = /\/[*/]#\s+sourceURL=(?<sourceURL>[^\s]+)\s*[*/]\/\s*$/;
4646

4747
const { fileURLToPath, pathToFileURL, URL } = require('internal/url');
4848
let SourceMap;

test/fixtures/source-map/typescript-sourcemapping_url_string.js

Lines changed: 4 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

test/fixtures/source-map/typescript-sourcemapping_url_string.js.map

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
// Flags: --enable-source-maps
2+
3+
'use strict';
4+
require('../common');
5+
Error.stackTraceLimit = 2;
6+
7+
try {
8+
require('../fixtures/source-map/typescript-sourcemapping_url_string');
9+
} catch (err) {
10+
setTimeout(() => {
11+
console.info(err);
12+
}, 10);
13+
}
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
reachable
2+
Error: an exception
3+
at *typescript-sourcemapping_url_string.ts:3:7*

0 commit comments

Comments
 (0)