aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/page.rs
diff options
context:
space:
mode:
authorbors-servo <metajack+bors@gmail.com>2015-01-30 16:06:52 -0700
committerbors-servo <metajack+bors@gmail.com>2015-01-30 16:06:52 -0700
commita7e29939a1df679bd865573dc71f7ba65f0268c4 (patch)
treea7ef2fbaeb96519cb7649dc0b70dd7b385d49b30 /components/script/page.rs
parent172aed535be3c34775824dac64ad2b91fc379ad5 (diff)
parent7b9c902a0af52b0b25787e09242b70a278ba55d2 (diff)
downloadservo-a7e29939a1df679bd865573dc71f7ba65f0268c4.tar.gz
servo-a7e29939a1df679bd865573dc71f7ba65f0268c4.zip
auto merge of #4777 : dmarcos/servo/issue4692, r=jdm
...id 'DOMRefCell already mutably borrowed' messages. This is just a temporary fix until the Rust standard library allows borrowing already-borrowed RefCell values during unwinding. It also removes LiveDOMReferences destructor that it's a no-op but it contains an assert that was being violated causing an endless cycle of destructor calls ending up in a stack overflow.
Diffstat (limited to 'components/script/page.rs')
-rw-r--r--components/script/page.rs4
1 files changed, 4 insertions, 0 deletions
diff --git a/components/script/page.rs b/components/script/page.rs
index b9dce92fac5..954813e607c 100644
--- a/components/script/page.rs
+++ b/components/script/page.rs
@@ -273,6 +273,10 @@ impl Page {
self.js_info.borrow_mut()
}
+ pub unsafe fn unsafe_mut_js_info<'a>(&'a self) -> &'a mut Option<JSPageInfo> {
+ self.js_info.borrow_for_script_deallocation()
+ }
+
pub fn js_info<'a>(&'a self) -> Ref<'a, Option<JSPageInfo>> {
self.js_info.borrow()
}