Stop using cycle collection support for aggregated objects in nsInMemoryDataSource




4 months ago
4 months ago


(Reporter: mccr8, Unassigned)


Firefox Tracking Flags

(Not tracked)




4 months ago
(In reply to Peter Van der Beken [:peterv] from comment #4)
> I think we should try to remove the cycle collection support for aggregated
> objects. AFAICT it's only used for nsInMemoryDataSource. Also, trying to
> understand this I think this line should have been
> |NS_IMPL_AGGREGATED_QUERY_CYCLE_COLLECTION(\_class)|. This would never have
> actually worked correctly if we made the outer's CC participant try to
> traverse/unlink the inner's members.
> I don't know what nsInMemoryDataSource is aggregated with, we should figure
> that out. If any of its outers participate in CC then we can just move
> NS_IMPL_AGGREGATED_QUERY_CYCLE_COLLECTION's code into the QI implementation
> for nsInMemoryDataSource, but we need to fix up the outer too to actually
> use this code, because we're probably leaking. If not then we just us the
> normal CC macros (but maybe also assert that the outer doesn't participate
> in CC).
You need to log in before you can comment on or make changes to this bug.