Commit 77fe549d authored by Gabriel Ivăncescu's avatar Gabriel Ivăncescu Committed by Alexandre Julliard

mshtml: Traverse and unlink AreaElements properly.

parent 1b310a5a
...@@ -461,6 +461,26 @@ fallback: ...@@ -461,6 +461,26 @@ fallback:
return HTMLElement_handle_event(&This->element.node, eid, event, prevent_default); return HTMLElement_handle_event(&This->element.node, eid, event, prevent_default);
} }
static void HTMLAreaElement_traverse(HTMLDOMNode *iface, nsCycleCollectionTraversalCallback *cb)
{
HTMLAreaElement *This = impl_from_HTMLDOMNode(iface);
if(This->nsarea)
note_cc_edge((nsISupports*)This->nsarea, "nsarea", cb);
}
static void HTMLAreaElement_unlink(HTMLDOMNode *iface)
{
HTMLAreaElement *This = impl_from_HTMLDOMNode(iface);
if(This->nsarea) {
nsIDOMHTMLAreaElement *nsarea = This->nsarea;
This->nsarea = NULL;
nsIDOMHTMLAreaElement_Release(nsarea);
}
}
static const NodeImplVtbl HTMLAreaElementImplVtbl = { static const NodeImplVtbl HTMLAreaElementImplVtbl = {
&CLSID_HTMLAreaElement, &CLSID_HTMLAreaElement,
HTMLAreaElement_QI, HTMLAreaElement_QI,
...@@ -468,7 +488,18 @@ static const NodeImplVtbl HTMLAreaElementImplVtbl = { ...@@ -468,7 +488,18 @@ static const NodeImplVtbl HTMLAreaElementImplVtbl = {
HTMLElement_cpc, HTMLElement_cpc,
HTMLElement_clone, HTMLElement_clone,
HTMLAreaElement_handle_event, HTMLAreaElement_handle_event,
HTMLElement_get_attr_col HTMLElement_get_attr_col,
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
HTMLAreaElement_traverse,
HTMLAreaElement_unlink
}; };
static const tid_t HTMLAreaElement_iface_tids[] = { static const tid_t HTMLAreaElement_iface_tids[] = {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment