Closed Bug 594592 Opened 14 years ago Closed 14 years ago

ABORT: Stopping frame when we didn't start one!: 'mInFrame' - [@ mozilla::imagelib::Decoder::PostStopFrame]

Categories

(Core :: Graphics: ImageLib, defect)

x86
Windows 7
defect
Not set
normal

Tracking

()

RESOLVED WORKSFORME
Tracking Status
blocking2.0 --- final+

People

(Reporter: kinetik, Assigned: bholley)

References

Details

(Keywords: regression)

I'm seeing the following abort when searching videos on YouTube with a debug build of the current tip (0f9e4e3b77ec) on Windows 7:

###!!! ABORT: Stopping frame when we didn't start one!: 'mInFrame', file c:/work
/mozilla-central/modules/libpr0n/src/Decoder.cpp, line 172

Steps to reproduce:

1. Load http://www.youtube.com/results?search_query=bmw+m3&aq=f&webm=1
2. Change search to "bmw 1m" and click search.
3. Abort.

 	xul.dll!RealBreak()  Line 407	C++
 	xul.dll!NS_DebugBreak_P(unsigned int aSeverity, const char * aStr, const char * aExpr, const char * aFile, int aLine)  Line 336	C++
>	xul.dll!mozilla::imagelib::Decoder::PostFrameStop()  Line 172 + 0x26 bytes	C++
 	xul.dll!mozilla::imagelib::nsJPEGDecoder::NotifyDone(int aSuccess)  Line 572	C++
 	xul.dll!mozilla::imagelib::nsJPEGDecoder::FinishInternal()  Line 207	C++
 	xul.dll!mozilla::imagelib::Decoder::Finish()  Line 93	C++
 	xul.dll!mozilla::imagelib::RasterImage::ShutdownDecoder(mozilla::imagelib::RasterImage::eShutdownIntent aIntent)  Line 2205 + 0x12 bytes	C++
 	xul.dll!mozilla::imagelib::imgDecodeWorker::Run()  Line 2688 + 0xa bytes	C++
 	xul.dll!mozilla::imagelib::RasterImage::SourceDataComplete()  Line 1331 + 0x1c bytes	C++
 	xul.dll!imgRequest::OnStopRequest(nsIRequest * aRequest, nsISupports * ctxt, unsigned int status)  Line 935 + 0x1b bytes	C++
 	xul.dll!ProxyListener::OnStopRequest(nsIRequest * aRequest, nsISupports * ctxt, unsigned int status)  Line 2009	C++
 	xul.dll!nsStreamListenerTee::OnStopRequest(nsIRequest * request, nsISupports * context, unsigned int status)  Line 71 + 0x28 bytes	C++
 	xul.dll!nsHttpChannel::OnStopRequest(nsIRequest * request, nsISupports * ctxt, unsigned int status)  Line 3942	C++
 	xul.dll!nsInputStreamPump::OnStateStop()  Line 579	C++
 	xul.dll!nsInputStreamPump::OnInputStreamReady(nsIAsyncInputStream * stream)  Line 403 + 0xb bytes	C++
 	xul.dll!nsInputStreamReadyEvent::Run()  Line 113	C++
 	xul.dll!nsThread::ProcessNextEvent(int mayWait, int * result)  Line 547 + 0x19 bytes	C++
 	xul.dll!NS_ProcessNextEvent_P(nsIThread * thread, int mayWait)  Line 250 + 0x16 bytes	C++
 	xul.dll!mozilla::ipc::MessagePump::Run(base::MessagePump::Delegate * aDelegate)  Line 110 + 0xe bytes	C++
 	xul.dll!MessageLoop::RunInternal()  Line 220	C++
 	xul.dll!MessageLoop::RunHandler()  Line 203	C++
 	xul.dll!MessageLoop::Run()  Line 177	C++
 	xul.dll!nsBaseAppShell::Run()  Line 186	C++
 	xul.dll!nsAppShell::Run()  Line 243 + 0x9 bytes	C++
 	xul.dll!nsAppStartup::Run()  Line 191 + 0x1c bytes	C++
 	xul.dll!XRE_main(int argc, char * * argv, const nsXREAppData * aAppData)  Line 3665 + 0x25 bytes	C++
Keywords: crash, regression
Assignee: nobody → bobbyholley+bmo
blocking2.0: --- → ?
This is the result of us not checking whether we're in a frame when we post frame stop in nsJPEGDecoder::NotifyDone

Luckily, the problem is fixed in the big error handling rewrite in bug 514033. Marking the dep.
Depends on: 514033
This appears to have been fixed by the dependent bug. Closing.
Status: NEW → RESOLVED
Closed: 14 years ago
Resolution: --- → FIXED
blocking2.0: ? → final+
Keywords: crash
Resolution: FIXED → WORKSFORME
You need to log in before you can comment on or make changes to this bug.