Skip to content

Commit 19a1979

Browse files
author
bcoe
committed
errors: support prepareSourceMap with source-maps
1 parent baa3621 commit 19a1979

File tree

2 files changed

+25
-0
lines changed

2 files changed

+25
-0
lines changed

lib/internal/source_map/prepare_stack_trace.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,12 @@ const prepareStackTrace = (globalThis, error, trace) => {
1717
return f(error, trace);
1818
}
1919

20+
// `globalThis` is the global that contains the constructor which
21+
// created `error`.
22+
if (typeof globalThis.Error.prepareStackTrace === 'function') {
23+
return globalThis.Error.prepareStackTrace(error, trace);
24+
}
25+
2026
const { SourceMap } = require('internal/source_map/source_map');
2127
const errorString = ErrorToString.call(error);
2228

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
// Flags: --enable-source-maps
2+
'use strict';
3+
4+
require('../common');
5+
const assert = require('assert');
6+
7+
// Error.prepareStackTrace() can be overridden with source maps enabled.
8+
{
9+
let prepareCalled = false;
10+
Error.prepareStackTrace = (_error, trace) => {
11+
prepareCalled = true;
12+
};
13+
try {
14+
throw new Error('foo');
15+
} catch (err) {
16+
err.stack;
17+
}
18+
assert(prepareCalled);
19+
}

0 commit comments

Comments
 (0)