summaryrefslogtreecommitdiff
path: root/content/handlers/javascript
diff options
context:
space:
mode:
authorVincent Sanders <vince@kyllikki.org>2019-05-06 12:03:08 +0100
committerVincent Sanders <vince@kyllikki.org>2019-05-06 12:04:06 +0100
commitdbf02c37f4f1652561b9542530dd93b3ba310e9f (patch)
tree8b5015c155e4c23fc4ff51ff8d337561183782e1 /content/handlers/javascript
parent183f9ed8bc4be1f379e365fae5f47dbb348b7978 (diff)
downloadnetsurf-dbf02c37f4f1652561b9542530dd93b3ba310e9f.tar.gz
netsurf-dbf02c37f4f1652561b9542530dd93b3ba310e9f.tar.bz2
complete basic binding documentation
improve the alert() method parameter handling
Diffstat (limited to 'content/handlers/javascript')
-rw-r--r--content/handlers/javascript/duktape/Window.bnd16
1 files changed, 13 insertions, 3 deletions
diff --git a/content/handlers/javascript/duktape/Window.bnd b/content/handlers/javascript/duktape/Window.bnd
index cfc6f1fdb..5283a14ad 100644
--- a/content/handlers/javascript/duktape/Window.bnd
+++ b/content/handlers/javascript/duktape/Window.bnd
@@ -322,9 +322,19 @@ setter Window::name()
method Window::alert()
%{
- duk_size_t msg_len;
- const char *msg = duk_safe_to_lstring(ctx, 0, &msg_len);
- NSLOG(netsurf, INFO, "JS ALERT: %*s", (int)msg_len, msg);
+ duk_idx_t dukky_argc = duk_get_top(ctx);
+ if (dukky_argc == 0) {
+ NSLOG(netsurf, INFO, "JS ALERT");
+ } else {
+ duk_size_t msg_len;
+ const char *msg;
+
+ if (!duk_is_string(ctx, 0)) {
+ duk_to_string(ctx, 0);
+ }
+ msg = duk_safe_to_lstring(ctx, 0, &msg_len);
+ NSLOG(netsurf, INFO, "JS ALERT: %*s", (int)msg_len, msg);
+ }
return 0;
%}