diff options
author | Daniel Silverstone <dsilvers@digital-scurf.org> | 2019-05-04 17:32:17 +0100 |
---|---|---|
committer | Daniel Silverstone <dsilvers@digital-scurf.org> | 2019-05-04 17:32:17 +0100 |
commit | ed829a477222f169e4ff0727db920e8029fd0c7d (patch) | |
tree | 02972aa43de616e3f307754e661d92b22860b675 /content/handlers/javascript/duktape | |
parent | 8009444918b167e8499c8abb06e406d9769c38e8 (diff) | |
download | netsurf-ed829a477222f169e4ff0727db920e8029fd0c7d.tar.gz netsurf-ed829a477222f169e4ff0727db920e8029fd0c7d.tar.bz2 |
JS: Attribute external JS to the URI it came from in backtraces
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
Diffstat (limited to 'content/handlers/javascript/duktape')
-rw-r--r-- | content/handlers/javascript/duktape/dukky.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/content/handlers/javascript/duktape/dukky.c b/content/handlers/javascript/duktape/dukky.c index e9e72650c..171736338 100644 --- a/content/handlers/javascript/duktape/dukky.c +++ b/content/handlers/javascript/duktape/dukky.c @@ -716,7 +716,7 @@ duk_int_t dukky_pcall(duk_context *ctx, duk_size_t argc, bool reset_timeout) } -bool js_exec(jscontext *ctx, const char *txt, size_t txtlen) +bool js_exec(jscontext *ctx, const char *txt, size_t txtlen, const char *name) { assert(ctx); if (txt == NULL || txtlen == 0) return false; @@ -724,7 +724,11 @@ bool js_exec(jscontext *ctx, const char *txt, size_t txtlen) NSLOG(dukky, DEEPDEBUG, "%zd bytes: %s", txtlen, txt); (void) nsu_getmonotonic_ms(&ctx->exec_start_time); - duk_push_string(CTX, "?unknown source?"); + if (name != NULL) { + duk_push_string(CTX, name); + } else { + duk_push_string(CTX, "?unknown source?"); + } if (duk_pcompile_lstring_filename(CTX, DUK_COMPILE_EVAL, txt, txtlen) != 0) { NSLOG(dukky, INFO, "Failed to compile JavaScript input"); goto handle_error; |