summaryrefslogtreecommitdiffstats
path: root/contrib/dom
diff options
context:
space:
mode:
authorStefan Radomski <radomski@tk.informatik.tu-darmstadt.de>2013-04-07 17:08:46 (GMT)
committerStefan Radomski <radomski@tk.informatik.tu-darmstadt.de>2013-04-07 17:08:46 (GMT)
commitf13848cab284839c2f6abd39ef38dd18692a50cf (patch)
tree8de4b167374511cc2f7a9d89c2efb3f77ca3235d /contrib/dom
parent46d089f8642501cf2ffc4a531add0a3a8eaa268e (diff)
downloaduscxml-f13848cab284839c2f6abd39ef38dd18692a50cf.zip
uscxml-f13848cab284839c2f6abd39ef38dd18692a50cf.tar.gz
uscxml-f13848cab284839c2f6abd39ef38dd18692a50cf.tar.bz2
Even more conformance fixes
Diffstat (limited to 'contrib/dom')
-rw-r--r--contrib/dom/idl/SCXMLEvent.idl10
-rw-r--r--contrib/dom/scripts/CodeGeneratorArabicaV8.pm4
2 files changed, 9 insertions, 5 deletions
diff --git a/contrib/dom/idl/SCXMLEvent.idl b/contrib/dom/idl/SCXMLEvent.idl
index 394aa1a..c94560b 100644
--- a/contrib/dom/idl/SCXMLEvent.idl
+++ b/contrib/dom/idl/SCXMLEvent.idl
@@ -7,11 +7,11 @@
const unsigned short EXTERNAL = 2;
const unsigned short PLATFORM = 3;
- [CustomGetter] readonly attribute DOMString type;
+ [CustomGetter, EmptyAsNull] readonly attribute DOMString type;
readonly attribute DOMString name;
- readonly attribute DOMString origin;
- readonly attribute DOMString origintype;
+ [EmptyAsNull] readonly attribute DOMString origin;
+ [EmptyAsNull] readonly attribute DOMString origintype;
readonly attribute Node dom;
- readonly attribute DOMString sendid;
- readonly attribute DOMString invokeid;
+ [CustomGetter] readonly attribute DOMString sendid;
+ [EmptyAsNull] readonly attribute DOMString invokeid;
};
diff --git a/contrib/dom/scripts/CodeGeneratorArabicaV8.pm b/contrib/dom/scripts/CodeGeneratorArabicaV8.pm
index 0c7d1b5..17c83f5 100644
--- a/contrib/dom/scripts/CodeGeneratorArabicaV8.pm
+++ b/contrib/dom/scripts/CodeGeneratorArabicaV8.pm
@@ -352,6 +352,10 @@ END
} else {
my $v8Type = IdlToV8Type($attrType);
if ($attrType eq "DOMString") {
+ if ($attrExt->{'EmptyAsNull'}) {
+ push(@implContent, "\n if (privData->nativeObj->${wrapperGetter}.length() == 0)");
+ push(@implContent, "\n return v8::Undefined();");
+ }
push(@implContent, "\n return ${v8Type}::New(privData->nativeObj->${wrapperGetter}.c_str());");
} else {
push(@implContent, "\n return ${v8Type}::New(privData->nativeObj->${wrapperGetter});");