diff options
author | Ms2ger <ms2ger@gmail.com> | 2014-05-03 10:37:46 +0200 |
---|---|---|
committer | Ms2ger <ms2ger@gmail.com> | 2014-05-03 10:37:46 +0200 |
commit | 599d76fa6ef6135c17cf9579bbb05e153b1b7ec9 (patch) | |
tree | 729321d323ae18aeefb199e9d0fde913d7191b7b /src/components/script/dom/bindings/codegen/CodegenRust.py | |
parent | a6f235e285034f8e1f9dd96f143a55056aef0029 (diff) | |
download | servo-599d76fa6ef6135c17cf9579bbb05e153b1b7ec9.tar.gz servo-599d76fa6ef6135c17cf9579bbb05e153b1b7ec9.zip |
Add JSCLASS_DOM_GLOBAL to DOM global classes, and assert it is used.
It seems unlikely that this will ever be hit, but potentially hard to
figure out if it ever is hit.
Diffstat (limited to 'src/components/script/dom/bindings/codegen/CodegenRust.py')
-rw-r--r-- | src/components/script/dom/bindings/codegen/CodegenRust.py | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/src/components/script/dom/bindings/codegen/CodegenRust.py b/src/components/script/dom/bindings/codegen/CodegenRust.py index ab1bd83ea5e..443967afeed 100644 --- a/src/components/script/dom/bindings/codegen/CodegenRust.py +++ b/src/components/script/dom/bindings/codegen/CodegenRust.py @@ -1455,7 +1455,7 @@ class CGDOMJSClass(CGThing): def define(self): traceHook = "Some(%s)" % TRACE_HOOK_NAME if self.descriptor.createGlobal: - flags = "JSCLASS_IS_GLOBAL" + flags = "JSCLASS_IS_GLOBAL | JSCLASS_DOM_GLOBAL" slots = "JSCLASS_GLOBAL_SLOT_COUNT + 1" else: flags = "0" @@ -2035,10 +2035,8 @@ class CGGetPerInterfaceObject(CGAbstractMethod): wrapper and aGlobal is the sandbox's global. */ - /* Make sure our global is sane. Hopefully we can remove this sometime */ - /*if ((*JS_GetClass(aGlobal)).flags & JSCLASS_DOM_GLOBAL) == 0 { - return ptr::null(); - }*/ + assert!(((*JS_GetClass(aGlobal)).flags & JSCLASS_DOM_GLOBAL) != 0); + /* Check to see whether the interface objects are already installed */ let protoOrIfaceArray: *mut *JSObject = GetProtoOrIfaceArray(aGlobal) as *mut *JSObject; let cachedObject: *JSObject = *protoOrIfaceArray.offset(%s as int); @@ -4282,7 +4280,7 @@ class CGBindingRoot(CGThing): 'dom::bindings::utils::{CreateDOMGlobal, CreateInterfaceObjects2}', 'dom::bindings::utils::{ConstantSpec, cx_for_dom_object, Default}', 'dom::bindings::utils::{dom_object_slot, DOM_OBJECT_SLOT, DOMClass}', - 'dom::bindings::utils::{DOMJSClass}', + 'dom::bindings::utils::{DOMJSClass, JSCLASS_DOM_GLOBAL}', 'dom::bindings::utils::{FindEnumStringIndex, GetArrayIndexFromId}', 'dom::bindings::utils::{GetPropertyOnPrototype, GetProtoOrIfaceArray}', 'dom::bindings::utils::{HasPropertyOnPrototype, IntVal}', |