aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom/bindings/codegen/Configuration.py
diff options
context:
space:
mode:
Diffstat (limited to 'components/script/dom/bindings/codegen/Configuration.py')
-rw-r--r--components/script/dom/bindings/codegen/Configuration.py5
1 files changed, 3 insertions, 2 deletions
diff --git a/components/script/dom/bindings/codegen/Configuration.py b/components/script/dom/bindings/codegen/Configuration.py
index e6712357d35..5ea521e15b8 100644
--- a/components/script/dom/bindings/codegen/Configuration.py
+++ b/components/script/dom/bindings/codegen/Configuration.py
@@ -162,10 +162,12 @@ class Descriptor(DescriptorProvider):
self.concreteType = ifaceName
self.register = desc.get('register', True)
self.outerObjectHook = desc.get('outerObjectHook', 'None')
+ self.proxy = False
# If we're concrete, we need to crawl our ancestor interfaces and mark
# them as having a concrete descendant.
- self.concrete = desc.get('concrete', True)
+ self.concrete = (not self.interface.isCallback() and
+ desc.get('concrete', True))
self.operations = {
'IndexedGetter': None,
@@ -190,7 +192,6 @@ class Descriptor(DescriptorProvider):
addOperation('Stringifier', m)
if self.concrete:
- self.proxy = False
iface = self.interface
while iface:
for m in iface.members: