Open Bug 315306 Opened 19 years ago Updated 11 months ago

Need to ensure that content notifications match the DOM

Categories

(Core :: DOM: Core & HTML, defect, P5)

x86
Linux
defect

Tracking

()

People

(Reporter: bzbarsky, Unassigned)

References

(Depends on 1 open bug)

Details

It's possible for content to be added to the DOM and never notified on.  Conversely, it is also possible to notify multiple times on the same piece of content.  Finally, it's possible for content to be in the DOM, not yet notified on, for someone to do something with it, and _then_ for us to notify.

I'm not sure how to deal with this, exactly, so long as our notifications are decoupled from the actual content insertion (and even when they're couples, the third case above can pop up; the only way I see of dealing with that one is that BindToTree must guarantee that it doesn't do anything whatsoever outside the DOM node itself; see my recent post in n.p.m.dom with the subject "Partial proposal on handling DOM events, script execution, XBL constructors at a safe time").

It might be possible to at least assert some stuff by having a debug-only document observer that has a DOM state built only based on notifications and:

1) Asserting that that state matches actual DOM state at certain points (eg any
   time we go to construct frames)/
2) Asserting that ContentInserted/Appended notifications are not happening on
   content that's already had them happen (and hasn't been removed).

See bug 314776 for a case that #1 could have caught, for example.
Depends on: 359487
Assignee: general → nobody
QA Contact: ian → general
https://bugzilla.mozilla.org/show_bug.cgi?id=1472046

Move all DOM bugs that haven't been updated in more than 3 years and has no one currently assigned to P5.

If you have questions, please contact :mdaly.
Priority: -- → P5
Component: DOM → DOM: Core & HTML
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.