"ASSERTION: Fault in cycle collector: script pointer traversal failed"

RESOLVED FIXED in mozilla1.9beta3

Status

()

Core
XPCOM
P1
major
RESOLVED FIXED
11 years ago
11 years ago

People

(Reporter: Jesse Ruderman, Assigned: peterv)

Tracking

(Blocks: 1 bug, {assertion, memory-leak, regression})

Trunk
mozilla1.9beta3
assertion, memory-leak, regression
Points:
---
Bug Flags:
blocking1.9 +

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment, 2 obsolete attachments)

(Reporter)

Description

11 years ago
Starting last night, I've been seeing this sometimes when playing with XUL / XBL:

###!!! ASSERTION: Fault in cycle collector: script pointer traversal failed (ptr: 3d116a68)
: 'Not Reached', file /Users/jruderman/trunk/mozilla/xpcom/base/nsCycleCollector.cpp, line 1009

I haven't been able to make a testcase, but I got it in a debugger and let peterv look at it, and I think he has a patch.
Flags: blocking1.9?
(Assignee)

Comment 1

11 years ago
Created attachment 300591 [details] [diff] [review]
v1

Jesse, could you try this? Thanks!
Assignee: nobody → peterv
Status: NEW → ASSIGNED
(Reporter)

Comment 2

11 years ago
Seems to fix the problem :)
(Assignee)

Comment 3

11 years ago
We need to fix this for beta 3, faults lead to large leaks because we stop collecting.
I have a slightly different patch that should fix the problem too, I'm worried that some code assumes that QI'ing to nsIXPConnectWrappedJS means that the nsWrappedJS is still valid.
OS: Mac OS X → All
Priority: -- → P1
Hardware: PC → All
Target Milestone: --- → mozilla1.9beta3
(Assignee)

Comment 4

11 years ago
Created attachment 300641 [details] [diff] [review]
v2

Jesse, it'd be great if you could try this one too. Sorry about making you test another one.
Attachment #300591 - Attachment is obsolete: true
Flags: blocking1.9? → blocking1.9+
(Reporter)

Comment 5

11 years ago
I got lots of

###!!! ASSERTION: How did we get here?: 'tmp->IsValid()', file /Users/jruderman/trunk/mozilla/js/src/xpconnect/src/xpcwrappedjs.cpp, line 82

while testing with the first patch.
(Reporter)

Comment 6

11 years ago
I get that a lot with (just) the second patch, too.
(Assignee)

Comment 7

11 years ago
Created attachment 300751 [details] [diff] [review]
v3
Attachment #300641 - Attachment is obsolete: true
Attachment #300751 - Flags: superreview?
Attachment #300751 - Flags: review?
(Assignee)

Updated

11 years ago
Attachment #300751 - Flags: superreview?(jst)
Attachment #300751 - Flags: superreview?
Attachment #300751 - Flags: review?(jst)
Attachment #300751 - Flags: review?

Updated

11 years ago
Attachment #300751 - Flags: superreview?(jst)
Attachment #300751 - Flags: superreview+
Attachment #300751 - Flags: review?(jst)
Attachment #300751 - Flags: review+
(Assignee)

Comment 8

11 years ago
Comment on attachment 300751 [details] [diff] [review]
v3

Fixes a fault in the cycle collector, which make us leak a lot. Just removing some code that is obsolete, because we've already made the cycle collector pass in the correct pointer into this function.
Attachment #300751 - Flags: approval1.9b3?
Comment on attachment 300751 [details] [diff] [review]
v3

a=beltzner
Attachment #300751 - Flags: approval1.9b3? → approval1.9b3+
(Assignee)

Updated

11 years ago
Status: ASSIGNED → RESOLVED
Last Resolved: 11 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.