diff options
author | bors-servo <metajack+bors@gmail.com> | 2015-06-03 05:26:26 -0500 |
---|---|---|
committer | bors-servo <metajack+bors@gmail.com> | 2015-06-03 05:26:26 -0500 |
commit | 9edc296c46b05606c74920a42ba0effb5c953db0 (patch) | |
tree | b078c94e429a3f5ce26f7fd4e4e0ec0c7ba9c1a6 /components/script/dom/bindings/codegen/CodegenRust.py | |
parent | bb95e07f8e75663706f9077138912c4e06c3eac9 (diff) | |
parent | 453679fd1f3ffaa3bb4e292b3c73bebc9bd3e31d (diff) | |
download | servo-9edc296c46b05606c74920a42ba0effb5c953db0.tar.gz servo-9edc296c46b05606c74920a42ba0effb5c953db0.zip |
Auto merge of #6247 - jdm:tracefix, r=Ms2ger
This should allow the jQuery testsuite to complete.
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6247)
<!-- Reviewable:end -->
Diffstat (limited to 'components/script/dom/bindings/codegen/CodegenRust.py')
-rw-r--r-- | components/script/dom/bindings/codegen/CodegenRust.py | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/components/script/dom/bindings/codegen/CodegenRust.py b/components/script/dom/bindings/codegen/CodegenRust.py index 9f965a9c7e8..ebc5ec4e069 100644 --- a/components/script/dom/bindings/codegen/CodegenRust.py +++ b/components/script/dom/bindings/codegen/CodegenRust.py @@ -4166,9 +4166,13 @@ class CGClassTraceHook(CGAbstractClassHook): args = [Argument('*mut JSTracer', 'trc'), Argument('*mut JSObject', 'obj')] CGAbstractClassHook.__init__(self, descriptor, TRACE_HOOK_NAME, 'void', args) + self.traceGlobal = descriptor.isGlobal() def generate_code(self): - return CGGeneric("(*this).trace(%s);" % self.args[0].name) + body = [CGGeneric("(*this).trace(%s);" % self.args[0].name)] + if self.traceGlobal: + body += [CGGeneric("trace_global(trc, obj);")] + return CGList(body, "\n") class CGClassConstructHook(CGAbstractExternMethod): """ @@ -4770,7 +4774,7 @@ class CGBindingRoot(CGThing): 'dom::bindings::utils::{DOMJSClass, JSCLASS_DOM_GLOBAL}', 'dom::bindings::utils::{find_enum_string_index, get_array_index_from_id}', 'dom::bindings::utils::{get_property_on_prototype, get_proto_or_iface_array}', - 'dom::bindings::utils::finalize_global', + 'dom::bindings::utils::{finalize_global, trace_global}', 'dom::bindings::utils::has_property_on_prototype', 'dom::bindings::utils::is_platform_object', 'dom::bindings::utils::{Reflectable}', |