Closed
Bug 236268
Opened 20 years ago
Closed 13 years ago
imgRequest::OnStopDecode assertion: nsVoidArray::ElementAt(index past end array)
Categories
(Core :: Graphics: ImageLib, defect, P5)
Tracking
()
RESOLVED
WORKSFORME
People
(Reporter: timeless, Unassigned)
References
()
Details
(Keywords: assertion)
Encountered by another engineer here, cvs tree is from just before 1.7a. I thought there was a report about this somewhere but I couldn't find it. We believe the site is yahoo.com (root page), although it doesn't happen every time (it happened say 3 in 5 visits to a sequence of 5 pages, so it theoretically could have been one of the other 4 sites, but we're pretty sure it was yahoo). #1 0x4085356f in nsDebugImpl::Assertion(char const*, char const*, char const*, int) (this=0x813b670, aStr=0x41ec7fc0 "nsVoidArray::ElementAt(index past end array) - note on bug 96108", aExpr=0x41ec7f9b "aIndex < Count()", aFile=0x41ec7f20 "../../../dist/include/xpcom/nsVoidArray.h", aLine=72) at nsDebugImpl.cpp:271 #2 0x0808b3cf in nsDebug::Assertion(char const*, char const*, char const*, int) ( aStr=0x41ec7fc0 "nsVoidArray::ElementAt(index past end array) - note on bug 96108", aExpr=0x41ec7f9b "aIndex < Count()", aFile=0x41ec7f20 "../../../dist/include/xpcom/nsVoidArray.h", aLine=72) at nsDebug.cpp:108 #3 0x41e9a507 in nsVoidArray::ElementAt(int) const (this=0x8c84984, aIndex=1) at nsVoidArray.h:72 #4 0x41e9a2c5 in nsVoidArray::operator[](int) const (this=0x8c84984, aIndex=1) at nsVoidArray.h:93 #5 0x41e9801d in imgRequest::OnStopDecode(imgIRequest*, unsigned, unsigned shor t const*) (this=0x8c84958, aRequest=0x0, aStatus=0, aStatusArg=0x0) at imgRequest.cpp:527 #6 0x41ea04e8 in nsGIFDecoder2::EndGIF(void*, int) (aClientData=0x88eb698, aAnimationLoopCount=0) at nsGIFDecoder2.cpp:269 #7 0x41e9f2c3 in gif_write(gif_struct*, unsigned char const*, unsigned) ( gs=0x8f0e328, buf=0x82d3714 "GIF89a\001", len=43) at GIF2.cpp:986 #8 0x41ea0254 in nsGIFDecoder2::ProcessData(unsigned char*, unsigned, unsigned* ) (this=0x88eb698, data=0x82d3714 "GIF89a\001", count=43, _retval=0xbfffd944) at nsGIFDecoder2.cpp:197 #9 0x41e9ffac in ReadDataOut (in=0x8f3cdc4, closure=0x88eb698, fromRawSegment=0x82d3714 "GIF89a\001", toOffset=0, count=43, writeCount=0xbfffd944) at nsGIFDecoder2.cpp:139 #10 0x40810a57 in nsInputStreamTee::WriteSegmentFun(nsIInputStream*, void*, char const*, unsigned, unsigned, unsigned*) (in=0x8f3cdc4, closure=0x8e3f670, fromSegment=0x82d3714 "GIF89a\001", offset=0, count=43, writeCount=0xbfffd944) at nsInputStreamTee.cpp:102 #11 0x408161d5 in nsPipeInputStream::ReadSegments(unsigned (*)(nsIInputStream*, void*, char const*, unsigned, unsigned, unsigned*), void*, unsigned, unsigned*) (this=0x8f3cdc4, writer=0x40810a1e <nsInputStreamTee::WriteSegmentFun(nsIInputStream*, void*, char const*, unsigned, unsigned, unsigned*)>, closure=0x8e3f670, count=43, readCount=0xbfffda0c) at nsPipe3.cpp:761 The code of interest is probably: 525 PRInt32 count = mObservers.Count(); 526 for (PRInt32 i = 0; i < count; i++) { 527 imgRequestProxy *proxy = NS_STATIC_CAST(imgRequestProxy*, mObservers[i]); 528 if (proxy) proxy->OnStopDecode(GetResultFromImageStatus(mImageStatus), aStatusArg); 529 530 // If this assertion fires, it means that imgRequest notifications could 531 // be dropped! 532 NS_ASSERTION(count == mObservers.Count(), 533 "The observer list changed while being iterated over!"); 534 }
Status: UNCONFIRMED → NEW
Ever confirmed: true
Priority: -- → P5
Assignee: jdunn → nobody
QA Contact: imagelib
Status: NEW → RESOLVED
Closed: 13 years ago
Resolution: --- → WORKSFORME
You need to log in
before you can comment on or make changes to this bug.
Description
•