Last Comment Bug 770887 - MutationReceiver doesn't need to be cycle collected
: MutationReceiver doesn't need to be cycle collected
Product: Core
Classification: Components
Component: DOM (show other bugs)
: Trunk
: x86_64 Linux
: -- normal (vote)
: ---
Assigned To: Olli Pettay [:smaug]
: Andrew Overholt [:overholt]
Depends on:
  Show dependency treegraph
Reported: 2012-07-04 07:28 PDT by Olli Pettay [:smaug]
Modified: 2012-07-09 13:46 PDT (History)
2 users (show)
See Also:
Crash Signature:
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---

patch (2.13 KB, patch)
2012-07-04 07:28 PDT, Olli Pettay [:smaug]
continuation: review+
Details | Diff | Splinter Review

Description Olli Pettay [:smaug] 2012-07-04 07:28:58 PDT
Created attachment 639091 [details] [diff] [review]

nsMutationReceiver doesn't keep anything alive (except temporarily), so it can't
cause cycles.

Disconnect(false); is called in dtor.
Comment 1 Andrew McCreight [:mccr8] 2012-07-09 13:40:59 PDT
Comment on attachment 639091 [details] [diff] [review]

Review of attachment 639091 [details] [diff] [review]:

So none of the node etc pointers in nsMutationReceiverBase need cycle collection because they are either weak or are explicitly killed off by the observer?
Comment 2 Olli Pettay [:smaug] 2012-07-09 13:43:48 PDT
Yes. The strong pointers are temporarily kept alive while there are transient observers.
Comment 3 Olli Pettay [:smaug] 2012-07-09 13:46:44 PDT

Note You need to log in before you can comment on or make changes to this bug.