summaryrefslogtreecommitdiff
path: root/src/duk-libdom-generated.c
diff options
context:
space:
mode:
authorJohn-Mark Bell <jmb@netsurf-browser.org>2016-02-01 11:34:35 +0000
committerJohn-Mark Bell <jmb@netsurf-browser.org>2016-02-01 11:34:35 +0000
commitb0b8fe9acf002cbfeb68873cac6e01345e173fa8 (patch)
tree63595a55ac340381fdf0a0f46203c97caf0610e5 /src/duk-libdom-generated.c
parentd81d30699f57f0ca41b917c854ef6d0875a18129 (diff)
downloadnsgenbind-b0b8fe9acf002cbfeb68873cac6e01345e173fa8.tar.gz
nsgenbind-b0b8fe9acf002cbfeb68873cac6e01345e173fa8.tar.bz2
Expose nullable flag in IR and have generated getters use it.
Diffstat (limited to 'src/duk-libdom-generated.c')
-rw-r--r--src/duk-libdom-generated.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/duk-libdom-generated.c b/src/duk-libdom-generated.c
index bae0826..0790e00 100644
--- a/src/duk-libdom-generated.c
+++ b/src/duk-libdom-generated.c
@@ -102,8 +102,13 @@ output_generated_attribute_getter(FILE* outf,
"\t\t\tdom_string_data(str),\n"
"\t\t\tdom_string_length(str));\n"
"\t\tdom_string_unref(str);\n"
- "\t} else {\n"
- "\t\tduk_push_lstring(ctx, NULL, 0);\n"
+ "\t} else {\n");
+ if (atributee->typev[0].nullable) {
+ fprintf(outf, "\t\tduk_push_null(ctx);\n");
+ } else {
+ fprintf(outf, "\t\tduk_push_lstring(ctx, NULL, 0);\n");
+ }
+ fprintf(outf,
"\t}\n"
"\n"
"\treturn 1;\n");