Closed
Bug 254036
Opened 20 years ago
Closed 18 years ago
implement nsDOMEvent::DuplicatePrivateData()
Categories
(Core :: DOM: Events, defect)
Tracking
()
RESOLVED
FIXED
People
(Reporter: timeless, Unassigned)
References
Details
Bug 123756 (wfm) suggested this problem, and i suspect that this could explain some problems i've had. anyway many callsites do this: // We're leaving the DOM event loop so if we created a DOM event, // release here. if (*aDOMEvent && !externalDOMEvent) { nsrefcnt rc; NS_RELEASE2(*aDOMEvent, rc); if (0 != rc) { // Okay, so someone in the DOM loop (a listener, JS object) // still has a ref to the DOM Event but the internal data // hasn't been malloc'd. Force a copy of the data here so the // DOM Event is still valid. nsCOMPtr<nsIPrivateDOMEvent> privateEvent = do_QueryInterface(*aDOMEvent); if (privateEvent) { privateEvent->DuplicatePrivateData(); } } aDOMEvent = nsnull; } seemingly expecting duplicateprivatedata to do something. however, all it does is: //XXX Write me! //XXX And when you do, make sure to copy over the event target here, too! return NS_OK; <bryner> if you hold onto a dom event from your event listener <bryner> and then try to access it later, currently bad things happen anyway, someone needs to implement this. it'd be nice if bryner did it :), but i suspect i'll get to since i'm heavily invested in dom events.
Updated•20 years ago
|
Flags: blocking-aviary1.1?
Updated•19 years ago
|
Flags: blocking-aviary1.1? → blocking-aviary1.1-
Comment 1•18 years ago
|
||
nsDOMEvent::DuplicatePrivateData() was implemented in bug 234455
Status: NEW → RESOLVED
Closed: 18 years ago
Resolution: --- → FIXED
You need to log in
before you can comment on or make changes to this bug.
Description
•