Gitweb links:

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

The branch, master has been updated
       via  807d2b45f5e5c1cff654cdba2e4043f90b06fd59 (commit)
      from  e031876dd52c9d789ec5a3e41156d99962126c2e (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=807d2b45f5e5c1cff654cdba2e4043f90b06fd59
commit 807d2b45f5e5c1cff654cdba2e4043f90b06fd59
Author: Daniel Silverstone <[email protected]>
Commit: Daniel Silverstone <[email protected]>

    When operating on Window event attributes, pass NULL to dukky
    
    Signed-off-by: Daniel Silverstone <[email protected]>

diff --git a/src/duk-libdom-generated.c b/src/duk-libdom-generated.c
index 109b237..13194e0 100644
--- a/src/duk-libdom-generated.c
+++ b/src/duk-libdom-generated.c
@@ -47,8 +47,14 @@ output_generated_attribute_user_getter(struct opctx *outc,
                         return -1; /* not onxxx */
                 }
 
+                if (interfacee->u.interface.primary_global) {
+                        outputf(outc,
+                                "\tdom_event_target *et = NULL;\n");
+                } else {
+                        outputf(outc,
+                                "\tdom_event_target *et = (dom_event_target 
*)(((node_private_t *)priv)->node);\n");
+                }
                 outputf(outc,
-                        "\tdom_event_target *et = (dom_event_target 
*)(((node_private_t *)priv)->node);\n"
                         "\tdom_string *name;\n"
                         "\tdom_exception exc;\n\n"
                         "\texc = dom_string_create((const uint8_t *)\"%s\", 
%ld, &name);\n"
@@ -230,6 +236,14 @@ output_generated_attribute_user_setter(struct opctx *outc,
                         return -1; /* not onxxx */
                 }
 
+                if (interfacee->u.interface.primary_global) {
+                        outputf(outc,
+                                "\tdom_element *et = NULL;\n");
+                } else {
+                        outputf(outc,
+                                "\tdom_element *et = (dom_element 
*)(((node_private_t *)priv)->node);\n");
+                }
+
                 outputf(outc,
                         "\t/* handlerfn */\n"
                         "\tduk_push_this(ctx);\n"
@@ -242,8 +256,7 @@ output_generated_attribute_user_setter(struct opctx *outc,
                         "\t/* handlerfn this handlers %s handlerfn */\n"
                         "\tduk_put_prop(ctx, -3);\n"
                         "\t/* handlerfn this handlers */\n"
-                        "\tdukky_register_event_listener_for(ctx,\n"
-                        "\t\t(dom_element *)((node_private_t *)priv)->node,\n"
+                        "\tdukky_register_event_listener_for(ctx, et,\n"
                         "\t\tcorestring_dom_%s, false);\n"
                         "\treturn 0;\n",
                         atributee->name + 2,


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

Summary of changes:
 src/duk-libdom-generated.c |   19 ++++++++++++++++---
 1 file changed, 16 insertions(+), 3 deletions(-)

diff --git a/src/duk-libdom-generated.c b/src/duk-libdom-generated.c
index 109b237..13194e0 100644
--- a/src/duk-libdom-generated.c
+++ b/src/duk-libdom-generated.c
@@ -47,8 +47,14 @@ output_generated_attribute_user_getter(struct opctx *outc,
                         return -1; /* not onxxx */
                 }
 
+                if (interfacee->u.interface.primary_global) {
+                        outputf(outc,
+                                "\tdom_event_target *et = NULL;\n");
+                } else {
+                        outputf(outc,
+                                "\tdom_event_target *et = (dom_event_target 
*)(((node_private_t *)priv)->node);\n");
+                }
                 outputf(outc,
-                        "\tdom_event_target *et = (dom_event_target 
*)(((node_private_t *)priv)->node);\n"
                         "\tdom_string *name;\n"
                         "\tdom_exception exc;\n\n"
                         "\texc = dom_string_create((const uint8_t *)\"%s\", 
%ld, &name);\n"
@@ -230,6 +236,14 @@ output_generated_attribute_user_setter(struct opctx *outc,
                         return -1; /* not onxxx */
                 }
 
+                if (interfacee->u.interface.primary_global) {
+                        outputf(outc,
+                                "\tdom_element *et = NULL;\n");
+                } else {
+                        outputf(outc,
+                                "\tdom_element *et = (dom_element 
*)(((node_private_t *)priv)->node);\n");
+                }
+
                 outputf(outc,
                         "\t/* handlerfn */\n"
                         "\tduk_push_this(ctx);\n"
@@ -242,8 +256,7 @@ output_generated_attribute_user_setter(struct opctx *outc,
                         "\t/* handlerfn this handlers %s handlerfn */\n"
                         "\tduk_put_prop(ctx, -3);\n"
                         "\t/* handlerfn this handlers */\n"
-                        "\tdukky_register_event_listener_for(ctx,\n"
-                        "\t\t(dom_element *)((node_private_t *)priv)->node,\n"
+                        "\tdukky_register_event_listener_for(ctx, et,\n"
                         "\t\tcorestring_dom_%s, false);\n"
                         "\treturn 0;\n",
                         atributee->name + 2,


-- 
NetSurf Generator for JavaScript bindings

_______________________________________________
netsurf-commits mailing list
[email protected]
http://listmaster.pepperfish.net/cgi-bin/mailman/listinfo/netsurf-commits-netsurf-browser.org

Reply via email to