| Index: src/messages.js
|
| diff --git a/src/messages.js b/src/messages.js
|
| index 882fed5e2e7883316da5133f20de6f8380cf10e3..efa2fd130f7227fc6b7b9c7dbd35321af74aa15a 100644
|
| --- a/src/messages.js
|
| +++ b/src/messages.js
|
| @@ -812,8 +812,12 @@ function DefineError(f) {
|
| } else if (!IS_UNDEFINED(m)) {
|
| this.message = ToString(m);
|
| }
|
| - if ($Error.captureStackTraces) {
|
| - var raw_stack = %CollectStackTrace(f);
|
| + var stackTraceLimit = $Error.stackTraceLimit;
|
| + if (stackTraceLimit) {
|
| + // Cap the limit to avoid extremely big traces
|
| + if (stackTraceLimit < 0 || stackTraceLimit > 10000)
|
| + stackTraceLimit = 10000;
|
| + var raw_stack = %CollectStackTrace(f, stackTraceLimit);
|
| DefineOneShotAccessor(this, 'stack', function (obj) {
|
| return FormatRawStackTrace(obj, raw_stack);
|
| });
|
|
|