Auto merge of #6491 - michaelwu:mutable, r=metajack

Remove unnecessary uses of MutHeap



<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6491)
<!-- Reviewable:end -->
This commit is contained in:
bors-servo 2015-06-26 20:36:04 -06:00
commit b73eca160c
2 changed files with 9 additions and 9 deletions

View file

@ -89,7 +89,7 @@ struct InputActivationState {
indeterminate: bool,
checked: bool,
checked_changed: bool,
checked_radio: MutNullableHeap<JS<HTMLInputElement>>,
checked_radio: Option<JS<HTMLInputElement>>,
// In case mutability changed
was_mutable: bool,
// In case the type changed
@ -102,7 +102,7 @@ impl InputActivationState {
indeterminate: false,
checked: false,
checked_changed: false,
checked_radio: Default::default(),
checked_radio: None,
was_mutable: false,
old_type: InputType::InputText
}
@ -715,7 +715,7 @@ impl<'a> Activatable for &'a HTMLInputElement {
r.r().Checked()
})
};
cache.checked_radio.set(checked_member.r().map(JS::from_ref));
cache.checked_radio = checked_member.r().map(JS::from_ref);
cache.checked_changed = self.checked_changed.get();
self.SetChecked(true);
}
@ -751,7 +751,7 @@ impl<'a> Activatable for &'a HTMLInputElement {
InputType::InputRadio => {
// We want to restore state only if the element had been changed in the first place
if cache.was_mutable {
let old_checked: Option<Root<HTMLInputElement>> = cache.checked_radio.get().map(|t| t.root());
let old_checked: Option<Root<HTMLInputElement>> = cache.checked_radio.map(|t| t.root());
let name = self.get_radio_group_name();
match old_checked {
Some(ref o) => {

View file

@ -10,7 +10,7 @@ use dom::bindings::codegen::Bindings::WindowBinding::WindowMethods;
use dom::bindings::codegen::InheritTypes::NodeCast;
use dom::bindings::error::{Error, ErrorResult, Fallible};
use dom::bindings::global::GlobalRef;
use dom::bindings::js::{JS, MutHeap, Root};
use dom::bindings::js::{JS, Root};
use dom::bindings::utils::{Reflector, reflect_dom_object};
use dom::document::{Document, DocumentHelpers};
use dom::node::{Node, NodeHelpers};
@ -428,7 +428,7 @@ impl RangeInner {
#[must_root]
#[privatize]
pub struct BoundaryPoint {
node: MutHeap<JS<Node>>,
node: JS<Node>,
offset: u32,
}
@ -437,13 +437,13 @@ impl BoundaryPoint {
debug_assert!(!node.is_doctype());
debug_assert!(offset <= node.len());
BoundaryPoint {
node: MutHeap::new(JS::from_ref(node)),
node: JS::from_ref(node),
offset: offset,
}
}
pub fn node(&self) -> Root<Node> {
self.node.get().root()
self.node.root()
}
pub fn offset(&self) -> u32 {
@ -453,7 +453,7 @@ impl BoundaryPoint {
fn set(&mut self, node: &Node, offset: u32) {
debug_assert!(!node.is_doctype());
debug_assert!(offset <= node.len());
self.node.set(JS::from_ref(node));
self.node = JS::from_ref(node);
self.offset = offset;
}
}