From fece1d93348070f492480b30f5d9cdca750cf503 Mon Sep 17 00:00:00 2001 From: Garner Lee Date: Tue, 11 Nov 2014 11:20:00 +0100 Subject: [PATCH] Bug 1075198 - Support code generation for TypedArrays fields in generated events. r=smaug --- dom/bindings/Codegen.py | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/dom/bindings/Codegen.py b/dom/bindings/Codegen.py index 78d7f4909a9b..4e38d41763f9 100644 --- a/dom/bindings/Codegen.py +++ b/dom/bindings/Codegen.py @@ -14768,6 +14768,25 @@ class CGEventMethod(CGNativeMember): target += ".SetValue()" source += ".Value()" members += sequenceCopy % (target, source) + elif m.type.isSpiderMonkeyInterface(): + srcname = "%s.%s" % (self.args[1].name, name) + if m.type.nullable(): + members += fill( + """ + if (${srcname}.IsNull()) { + e->${varname} = nullptr; + } else { + e->${varname} = ${srcname}.Value().Obj(); + } + """, + varname=name, + srcname=srcname); + else: + members += fill( + """ + e->${varname}.set(${srcname}.Obj()); + """, + varname=name, srcname=srcname); else: members += "e->%s = %s.%s;\n" % (name, self.args[1].name, name) if m.type.isAny() or m.type.isObject() or m.type.isSpiderMonkeyInterface():