Quantcast
Channel: Adobe Community : Popular Discussions - InDesign Scripting
Viewing all articles
Browse latest Browse all 15932

Getting the stack trace of an error

$
0
0

When I catch an error, I would like to be able to log its stack trace. So far I’ve come up with this little trick:

 

Error.prototype.toString = function() {    if (typeof this.stack === "undefined" || this.stack === null) {        this.stack = "placeholder";        // The previous line is needed because the next line may indirectly call this method.        this.stack = $.stack;    }    return"Error";}

 

This attaches the stack to any manually-created error. For example, I can run:

 

try{    thrownew Error("I'm an error.");}catch (e) {    $.writeln("Stack: " + e.stack);}

 

And this will print the correct stack for the error. However, it only works for errors that I create. Is there any way to get the stack trace of any error?

 

Full disclosure: I’ve asked this on Stack Overflow without much success. See here for more info: http://stackoverflow.com/questions/16201574/getting-the-stack-trace-of -an-error-in-extendscript


Viewing all articles
Browse latest Browse all 15932


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>