You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
17 lines
636 B
17 lines
636 B
4 weeks ago
|
'use strict';
|
||
|
var uncurryThis = require('../internals/function-uncurry-this');
|
||
|
|
||
|
var $Error = Error;
|
||
|
var replace = uncurryThis(''.replace);
|
||
|
|
||
|
var TEST = (function (arg) { return String(new $Error(arg).stack); })('zxcasd');
|
||
|
// eslint-disable-next-line redos/no-vulnerable -- safe
|
||
|
var V8_OR_CHAKRA_STACK_ENTRY = /\n\s*at [^:]*:[^\n]*/;
|
||
|
var IS_V8_OR_CHAKRA_STACK = V8_OR_CHAKRA_STACK_ENTRY.test(TEST);
|
||
|
|
||
|
module.exports = function (stack, dropEntries) {
|
||
|
if (IS_V8_OR_CHAKRA_STACK && typeof stack == 'string' && !$Error.prepareStackTrace) {
|
||
|
while (dropEntries--) stack = replace(stack, V8_OR_CHAKRA_STACK_ENTRY, '');
|
||
|
} return stack;
|
||
|
};
|