Closed Bug 336915 Opened 15 years ago Closed 8 years ago

Crash when closing Firefox [@ CSSLoaderImpl::CheckLoadAllowed] with Leak Monitor and Nightly Tester Tools installed

Categories

(Core :: CSS Parsing and Computation, defect)

x86
All
defect
Not set
critical

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: JasnaPaka, Unassigned)

Details

(Keywords: crash)

Crash Data

Attachments

(2 files)

User-Agent:       Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9a1) Gecko/20060506 Minefield/3.0a1
Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9a1) Gecko/20060506 Minefield/3.0a1

Firefox Trunk, clean profile

Reproducible: Always

Steps to Reproduce:
1. Open Firefox.
2. Visit some URL.
3. Close Firefox.

Actual Results:  
Firefox crashes.


Talkback's ids: TB18380407Z, TB18380364H, TB18379623M
Keywords: crash
Incident ID: 18380364
Stack Signature	CSSLoaderImpl::CheckLoadAllowed 03caa73b
Product ID	FirefoxTrunk
Build ID	2006050604
Trigger Time	2006-05-06 14:44:16.0
Platform	Win32
Operating System	Windows NT 5.1 build 2600
Module	firefox.exe + (0017088e)
URL visited	
User Comments	
Since Last Crash	1770 sec
Total Uptime	15578 sec
Trigger Reason	Access violation
Source File, Line No.	c:\builds\tinderbox\fx-trunk-cairo\winnt_5.2_depend\mozilla\layout\style\nscssloader.cpp, line 887
Stack Trace 	
CSSLoaderImpl::CheckLoadAllowed   CSSLoaderImpl::LoadChildSheet   CSSParserImpl::ProcessImport   CSSParserImpl::ParseImportRule   nsHTMLDivElement::Clone   0x8d167457
Assignee: nobody → dbaron
Severity: normal → critical
Component: General → Style System (CSS)
Product: Firefox → Core
QA Contact: general → ian
Version: unspecified → Trunk
TB18400952E, TB18400849Y, TB18400627Y
Status: UNCONFIRMED → NEW
Ever confirmed: true
OS: Windows XP → All
OK, I can't reproduce this after disabling the Leak Monitor extension. Is that the same for everyone else who can reproduce this bug?

dbaron, this doesn't occur for me if I disable your extension, but I still assume Gecko is doing something wrong, correct?
(In reply to comment #3)
> OK, I can't reproduce this after disabling the Leak Monitor extension. Is that
> the same for everyone else who can reproduce this bug?

I can confirm this. After disabling the Leak Monitor extension all works fine.
Hmm...  Do you have some other extension (like adblock) installed?
Actually, I should have tested more thouroughly. When the crash went away after disabling the Leak Monitor extension, I assumed that it was the trigger. However, creating a clean profile with that extension didn't show the crash.

For me at least, a clean profile, the Leak Monitor extension, and the Nightly Tester Tools extension are needed to reproduce.

A crash that is triggered by 2 extensions may seem an edge case, but both of these extensions are common in nightly build users now.

Can someone else confirm that a clean profile with these 2 extensions crashes on quit, but disabling one or the other makes the problem disappear?
Summary: crash when closing Firefox [@ CSSLoaderImpl::CheckLoadAllowed] → Crash when closing Firefox [@ CSSLoaderImpl::CheckLoadAllowed] with Leak Monitor and Nightly Tester Tools installed
Links to those extensions?
(In reply to comment #5)
> Hmm...  Do you have some other extension (like adblock) installed?

No. 

Firefox Trunk, clean profile + Leak Monitor extension + Nightly tools extension -> Firefox crashes after I close Firefox.

Firefox Trunk, clean profile + Leak Monitor extension -> no problem with stability.
*** Bug 337019 has been marked as a duplicate of this bug. ***
Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9a1) Gecko/20060507 Minefield/3.0a1

(In reply to comment #7)
> Links to those extensions?
> 

Leak Monitor 0.1.2, by L. David Baron, released on May 2, 2006 - https://addons.mozilla.org/firefox/2490/

Nightly Tester Tools 1.0.2, by Mossop, released on May 5, 2006 - https://addons.mozilla.org/firefox/958/

Those are the 2 extensions I used to reproduce this bug using the Minefield build stated at the top of this reply.

(In reply to comment #8)
> (In reply to comment #5)
> > Hmm...  Do you have some other extension (like adblock) installed?
> 
> No. 
> 
> Firefox Trunk, clean profile + Leak Monitor extension + Nightly tools extension
> -> Firefox crashes after I close Firefox.
> 
> Firefox Trunk, clean profile + Leak Monitor extension -> no problem with
> stability.
> 

Thanks Pavel.
When I install Nightly Tester Tools and start up, I get a barrage of threadsafety assertions and JS stack dumps from XPConnect.  Then my build deadlocks.  This is all without any other extensions installed.  In particular, without Leak Monitor installed.

Whatever Nightly Tester Tools is doing here is NOT safe and WILL cause crashes, generally speaking.
Attached file Apple crash log
Fx crashes on quit with a clean profile + Leak Monitor extension 1.3, no other extensions or themes.

OS X 10.4, Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en-US; rv:1.9a1) Gecko/20060507 Minefield/3.0a1
(In reply to comment #11)
> Whatever Nightly Tester Tools is doing here is NOT safe and WILL cause crashes,
> generally speaking.
> 

That may be the case and I've contacted you directly regarding this. But I don't believe that it is the source of this bug. Fixing the leak from NTT does stop this crash from occurring. Additionally uninstalling NTT and installing another extension that leaks something in the main window means that the crash continues to happen.

Both of these were leaking through adding a preferences observer and never removing it.
This is a simple extension that leaks a preferences observer. With just this extension and the Leak Monitor installed Firefox will crash on exit.
(In reply to comment #14)
> Created an attachment (id=221284) [edit]
> Extension that leaks and causes crash
> 
> This is a simple extension that leaks a preferences observer. With just this
> extension and the Leak Monitor installed Firefox will crash on exit.
> 

I can confirm that this extension also causes a crash on shutdown with Leak Monitor installed.
bz: i'm hitting this for each update i've done i have domi, leak monitor and talkback.
once i disabled leak, i stopped crashing. but boy, what a waste of time. next time i'll just download my own current minefield instead of trying to use the app updater
Dave, thanks for the test extension!

So the basic idea is that we're doing a load of leakmon.jar!/content/leakAlert.xul after the layout module has shut down.  So the security manager pointer in nsContentUtils is null, and the security check in nsCSSLoader crashes.

Perhaps leak monitor needs to observe quit-application or something like that and not trigger after that?
I added the quit-application check in leak-monitor 0.2.0.  But it really seems like the code probably ought to have the necessary null checks for this; there are potentially other things that could just happen to happen at certain times, although maybe it's rarer happening after xpcom-shutdown.
Assignee: dbaron → nobody
QA Contact: ian → style-system
Crash Signature: [@ CSSLoaderImpl::CheckLoadAllowed]
I think you can close this bug.
Extension hasn't been updated for a while.
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.