(In reply to Valentin Gosu [:valentin] (he/him) from comment #32) > `mIndex->mFrecencyArray.RemoveRecord(entry->mRec, mProofOfLock);` actually release mRec? It [seems to be the case that we null out `mRecs[idx]`](https://searchfox.org/mozilla-central/rev/59f0bf3c13dd455d9f5415b89178de701ea6b850/netwerk/cache2/CacheIndex.cpp#3370), where `idx` comes from `entry->mRec`. Being `mRecs` an `nsTArray<RefPtr<CacheIndexRecordWrapper>>` an array of `RefPtr` this might delete something unexpectedly, indeed.
Bug 1745972 Comment 33 Edit History
Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.
(In reply to Valentin Gosu [:valentin] (he/him) from comment #32) > `mIndex->mFrecencyArray.RemoveRecord(entry->mRec, mProofOfLock);` actually release mRec? It [seems to be the case that we null out `mRecs[idx]`](https://searchfox.org/mozilla-central/rev/59f0bf3c13dd455d9f5415b89178de701ea6b850/netwerk/cache2/CacheIndex.cpp#3370), where `idx` comes from `entry->mRec`. Being `mRecs` an `nsTArray<RefPtr<CacheIndexRecordWrapper>>` an array of `RefPtr` this might delete something unexpectedly, indeed. Not sure about the level of indirection here, though: Keeping a `RefPtr` for `entry->mRec` might actually not refer to the same object we potentially delete?