Gitweb links:

...log 
http://git.netsurf-browser.org/nsgenbind.git/shortlog/ecdd70336d64b21f57313c9c9e55e5f00f48f576
...commit 
http://git.netsurf-browser.org/nsgenbind.git/commit/ecdd70336d64b21f57313c9c9e55e5f00f48f576
...tree 
http://git.netsurf-browser.org/nsgenbind.git/tree/ecdd70336d64b21f57313c9c9e55e5f00f48f576

The branch, master has been updated
       via  ecdd70336d64b21f57313c9c9e55e5f00f48f576 (commit)
      from  de5907061aead26aeef95d998a02ea7b00d4242d (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commitdiff 
http://git.netsurf-browser.org/nsgenbind.git/commit/?id=ecdd70336d64b21f57313c9c9e55e5f00f48f576
commit ecdd70336d64b21f57313c9c9e55e5f00f48f576
Author: Daniel Silverstone <dsilv...@digital-scurf.org>
Commit: Daniel Silverstone <dsilv...@digital-scurf.org>

    typeck: When checking BOOL permit numbers because they have coercion rules
    
    Signed-off-by: Daniel Silverstone <dsilv...@digital-scurf.org>

diff --git a/src/duk-libdom-interface.c b/src/duk-libdom-interface.c
index 7926478..46436c4 100644
--- a/src/duk-libdom-interface.c
+++ b/src/duk-libdom-interface.c
@@ -1230,9 +1230,13 @@ output_operation_argument_type_check(
 
         case WEBIDL_TYPE_BOOL:
                 outputf(outc,
-                        "\t\tif (!duk_is_boolean(ctx, %d)) {\n"
-                        "\t\t\treturn duk_error(ctx, DUK_ERR_ERROR, 
%s_error_fmt_bool_type, %d, \"%s\");\n"
-                        "\t\t}\n", argidx, DLPFX, argidx, argumente->name);
+                       "\t\tif (!duk_is_boolean(ctx, %d)) {\n"
+                       "\t\t\tif (duk_is_number(ctx, %d)) {\n"
+                       "\t\t\t\tduk_to_boolean(ctx, %d);\n"
+                       "\t\t\t} else {\n"
+                       "\t\t\t\treturn duk_error(ctx, DUK_ERR_ERROR, 
%s_error_fmt_bool_type, %d, \"%s\");\n"
+                       "\t\t\t}\n"
+                       "\t\t}\n", argidx, argidx, argidx, DLPFX, argidx, 
argumente->name);
                 break;
 
         case WEBIDL_TYPE_FLOAT:


-----------------------------------------------------------------------

Summary of changes:
 src/duk-libdom-interface.c |   10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/src/duk-libdom-interface.c b/src/duk-libdom-interface.c
index 7926478..46436c4 100644
--- a/src/duk-libdom-interface.c
+++ b/src/duk-libdom-interface.c
@@ -1230,9 +1230,13 @@ output_operation_argument_type_check(
 
         case WEBIDL_TYPE_BOOL:
                 outputf(outc,
-                        "\t\tif (!duk_is_boolean(ctx, %d)) {\n"
-                        "\t\t\treturn duk_error(ctx, DUK_ERR_ERROR, 
%s_error_fmt_bool_type, %d, \"%s\");\n"
-                        "\t\t}\n", argidx, DLPFX, argidx, argumente->name);
+                       "\t\tif (!duk_is_boolean(ctx, %d)) {\n"
+                       "\t\t\tif (duk_is_number(ctx, %d)) {\n"
+                       "\t\t\t\tduk_to_boolean(ctx, %d);\n"
+                       "\t\t\t} else {\n"
+                       "\t\t\t\treturn duk_error(ctx, DUK_ERR_ERROR, 
%s_error_fmt_bool_type, %d, \"%s\");\n"
+                       "\t\t\t}\n"
+                       "\t\t}\n", argidx, argidx, argidx, DLPFX, argidx, 
argumente->name);
                 break;
 
         case WEBIDL_TYPE_FLOAT:


-- 
NetSurf Generator for JavaScript bindings
_______________________________________________
netsurf-commits mailing list -- netsurf-commits@netsurf-browser.org
To unsubscribe send an email to netsurf-commits-le...@netsurf-browser.org

Reply via email to