Use DOMRefCell for EventTarget.

This commit is contained in:
Tetsuharu OHZEKI 2014-10-21 01:44:31 +09:00
parent 1aefa5423a
commit 752c821e43

View file

@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::callback::CallbackContainer; use dom::bindings::callback::CallbackContainer;
use dom::bindings::cell::DOMRefCell;
use dom::bindings::codegen::Bindings::EventHandlerBinding::EventHandlerNonNull; use dom::bindings::codegen::Bindings::EventHandlerBinding::EventHandlerNonNull;
use dom::bindings::codegen::Bindings::EventListenerBinding::EventListener; use dom::bindings::codegen::Bindings::EventListenerBinding::EventListener;
use dom::bindings::codegen::Bindings::EventTargetBinding::EventTargetMethods; use dom::bindings::codegen::Bindings::EventTargetBinding::EventTargetMethods;
@ -19,7 +20,6 @@ use js::jsapi::{JS_CompileUCFunction, JS_GetFunctionObject, JS_CloneFunctionObje
use js::jsapi::{JSContext, JSObject}; use js::jsapi::{JSContext, JSObject};
use servo_util::str::DOMString; use servo_util::str::DOMString;
use libc::{c_char, size_t}; use libc::{c_char, size_t};
use std::cell::RefCell;
use std::ptr; use std::ptr;
use url::Url; use url::Url;
@ -69,7 +69,7 @@ pub struct EventListenerEntry {
pub struct EventTarget { pub struct EventTarget {
type_id: EventTargetTypeId, type_id: EventTargetTypeId,
reflector_: Reflector, reflector_: Reflector,
handlers: RefCell<HashMap<DOMString, Vec<EventListenerEntry>>>, handlers: DOMRefCell<HashMap<DOMString, Vec<EventListenerEntry>>>,
} }
impl EventTarget { impl EventTarget {
@ -77,7 +77,7 @@ impl EventTarget {
EventTarget { EventTarget {
type_id: type_id, type_id: type_id,
reflector_: Reflector::new(), reflector_: Reflector::new(),
handlers: RefCell::new(HashMap::new()), handlers: DOMRefCell::new(HashMap::new()),
} }
} }