"ASSERTION: nsVoidArray::FastElementAt: index out of range: '0 <= aIndex && aIndex < Count()'" when quitting Thunderbird

RESOLVED WORKSFORME

Status

RESOLVED WORKSFORME
10 years ago
3 years ago

People

(Reporter: gkw, Unassigned)

Tracking

({assertion})

Trunk
x86
Mac OS X
assertion

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(2 attachments)

Created attachment 324691 [details]
backtrace

###!!! ASSERTION: nsVoidArray::FastElementAt: index out of range: '0 <= aIndex && aIndex < Count()', file ../../dist/include/xpcom/nsVoidArray.h, line 72

I hit this while quitting Thunderbird. Latest compiled debug builds on Leopard.
From the code, it looks like it's a threading issue: the connection is being removed in the middle of connection shutdown.

It's a hard one to create a reliable test, but I think I can open a few connections to a fakeserver and then force the others to timeout as I close the first one.

Fix should be simple: protect the array by having a mIsClosing attribute.
Moving to Core -> Networking. I can trigger this assertion with IMAP files on the stack instead of news.
Component: Networking: News → Networking
Created attachment 324920 [details]
both normal and full backtraces with IMAP on stack
QA Contact: networking.nntp → networking
Component: Networking → Networking
Product: Core → MailNews Core
QA Contact: networking → networking

Comment 4

3 years ago
nsVoidArray.h does not exist anymore. It was removed here.
http://hg.mozilla.org/mozilla-central/diff/e9f75be97c2d/xpcom/glue/nsVoidArray.h

(Not sure if this is "Fixed" or "Wontfix", change if you thing different)
Status: NEW → RESOLVED
Last Resolved: 3 years ago
Resolution: --- → WONTFIX
Thanks for looking at this! I'd say WORKSFORME though, since the assertion no longer shows up presumably.
Resolution: WONTFIX → WORKSFORME
You need to log in before you can comment on or make changes to this bug.