Closed Bug 228730 Opened 21 years ago Closed 21 years ago

crash when turning off xul cache

Categories

(Core :: XUL, defect)

x86
Linux
defect
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: basic, Assigned: bzbarsky)

References

()

Details

(Keywords: crash)

Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.6b) Gecko/20031216 I get a crash when turning off xul cache via prefs. Stack trace. #0 0x406e7006 in nanosleep () from /lib/i686/libc.so.6 #1 0xffffffa0 in ?? () #2 0x08070886 in ah_crap_handler(int) (signum=11) at ../../../xpfe/bootstrap/nsSigHandlers.cpp:135 #3 0x41c7bf67 in nsProfileLock::FatalSignalHandler(int) (signo=0) at ../../../../profile/dirserviceprovider/src/nsProfileLock.cpp:195 #4 0x401004ec in __pthread_clock_settime () from /lib/i686/libpthread.so.0 #5 0x40664ca8 in __libc_sigaction () from /lib/i686/libc.so.6 #6 0x415d37d7 in nsXBLPrototypeHandler::ExecuteHandler(nsIDOMEventReceiver*, nsIDOMEvent*) (this=0x8b0cc90, aReceiver=0x89340e8, aEvent=0x41741708) at ../../../../content/xbl/src/nsXBLPrototypeHandler.cpp:436 #7 0x415d3e3b in nsXBLPrototypeHandler::BindingDetached(nsIDOMEventReceiver*) ( this=0x8b0cc90, aReceiver=0x89340e8) at ../../../../content/xbl/src/nsXBLPrototypeHandler.cpp:548 #8 0x415c078f in nsXBLPrototypeBinding::BindingDetached(nsIDOMEventReceiver*) ( this=0xfffffffc, aReceiver=0x89340e8) at ../../../../content/xbl/src/nsXBLPrototypeBinding.cpp:389 #9 0x415bd158 in nsXBLBinding::ExecuteDetachedHandler() (this=0x8bd5ae0) at ../../../../content/xbl/src/nsXBLBinding.cpp:858 #10 0x415bd191 in nsXBLBinding::ExecuteDetachedHandler() (this=0x8bd5b08) at ../../../../content/xbl/src/nsXBLBinding.cpp:861 #11 0x415dc9b4 in ExecuteDetachedHandler (aTable=0x8bcfeac, aHdr=0x8b7f1b8, aNumber=12, aClosure=0x0) at ../../../../content/xbl/src/nsBindingManager.cpp:940 #12 0x40a0d296 in PL_DHashTableEnumerate (table=0x8bcfeac, etor=0x415dc990 <ExecuteDetachedHandler>, arg=0x0) at ../../../xpcom/ds/pldhash.c:619 #13 0x415dc9f5 in nsBindingManager::ExecuteDetachedHandlers() (this=0x407689a0) at ../../../../content/xbl/src/nsBindingManager.cpp:950 #14 0x424b8488 in GlobalWindowImpl::HandleDOMEvent(nsIPresContext*, nsEvent*, nsIDOMEvent**, unsigned, nsEventStatus*) (this=0x8aaa968, aPresContext=0x8b557d0, aEvent=0xbfffeaf0, aDOMEvent=0xbfffe9b4, aFlags=7, aEventStatus=0xbfffeaec) at ../../../../dom/src/base/nsGlobalWindow.cpp:820 #15 0x413d780c in DocumentViewerImpl::Unload() (this=0x8bd5b80) at ../../../../content/base/src/nsDocumentViewer.cpp:977 #16 0x41f4a81e in nsDocShell::FireUnloadNotification() (this=0x8aaa7e8) at ../../../docshell/base/nsDocShell.cpp:825 #17 0x41f4a8a4 in nsDocShell::FireUnloadNotification() (this=0x0) at ../../../docshell/base/nsDocShell.cpp:833 #18 0x41f51aae in nsDocShell::Destroy() (this=0x8a2c228) at ../../../docshell/base/nsDocShell.cpp:3014 #19 0x41f7b50d in nsWebShell::Destroy() (this=0x8a2c228) at ../../../docshell/base/nsWebShell.cpp:1260 #20 0x41b1df9a in nsXULWindow::Destroy() (this=0x8a2b508) at ../../../../xpfe/appshell/src/nsXULWindow.cpp:490 #21 0x41b3bd33 in nsWebShellWindow::Destroy() (this=0x8a2b508) at ../../../../xpfe/appshell/src/nsWebShellWindow.cpp:1677 #22 0x41b13d22 in nsChromeTreeOwner::Destroy() (this=0x4172f688) at ../../../../xpfe/appshell/src/nsChromeTreeOwner.cpp:293 #23 0x424c1051 in GlobalWindowImpl::ReallyCloseWindow() (this=0x8a310c8) at ../../../../dom/src/base/nsGlobalWindow.cpp:3452 #24 0x424c4be0 in GlobalWindowImpl::CloseWindow(nsISupports*) (aWindow=0x8a310cc) at ../../../../dom/src/base/nsGlobalWindow.cpp:4579 #25 0x424a8282 in nsJSContext::ScriptEvaluated(int) (this=0x8a312e8, aTerminated=1) at ../../../../dom/src/base/nsJSEnvironment.cpp:1704 #26 0x424a759f in nsJSContext::CallEventHandler(void*, void*, unsigned, void*, int*, int) (this=0x8a312e8, aTarget=0x897d978, aHandler=0x82673c8, argc=2, argv=0x87e52b8, aBoolResult=0xbfffefa4, aReverseReturnResult=0) at ../../../../dom/src/base/nsJSEnvironment.cpp:1261 #27 0x424c581e in GlobalWindowImpl::RunTimeout(nsTimeoutImpl*) (this=0x8a310c8, aTimeout=0x8a3e1e0) at ../../../../dom/src/base/nsGlobalWindow.cpp:4919 #28 0x424c6098 in GlobalWindowImpl::TimerCallback(nsITimer*, void*) (aTimer=0x89d3e40, aClosure=0x8a3e1e0) at ../../../../dom/src/base/nsGlobalWindow.cpp:5279 #29 0x40a771e0 in nsTimerImpl::Fire() (this=0x89d3e40) at ../../../xpcom/threads/nsTimerImpl.cpp:382 #30 0x40a77315 in handleTimerEvent(TimerEventType*) (event=0x42f004c8) at ../../../xpcom/threads/nsTimerImpl.cpp:447 #31 0x40a70703 in PL_HandleEvent (self=0x42f004c8) at ../../../xpcom/threads/plevent.c:671 #32 0x40a70549 in PL_ProcessPendingEvents (self=0x810c1e8) at ../../../xpcom/threads/plevent.c:606 #33 0x40a728c3 in nsEventQueueImpl::ProcessPendingEvents() (this=0x810c1c0) at ../../../xpcom/threads/nsEventQueue.cpp:391 #34 0x41bfcc95 in event_processor_callback (source=0x82feca0, condition=G_IO_IN, data=0x407689a0) at ../../../../widget/src/gtk2/nsAppShell.cpp:67
.
Assignee: other → hyatt
Component: Layout → XP Toolkit/Widgets: XUL
QA Contact: ian → shrir
Don't do that, then. WONTFIX pending jrgm's assent. /be
Assignee: hyatt → bz-vacation
Keywords: crash
Hmm, yes, don't do that. (Er, well, I'd prefer to nuke the pref, but some folks feel it's useful when developing a XUL dialog, etc. If there is a valid fix for this, then fine, but in general consider disabling the XUL cache to be an unsupported feature).
On behalf of XPFEers, we'd rather see a fix than a black-box approach. All other caching systems I know of provide developer support for disabling the cache. That way, delivery can be done synchronously from origin during testing. One less source of debug time confusion for us. - N.
The reason I was bumping into this was that I needed to turn off xul cache to do testing and quick development of a xul app I'm developing. If it is too much work to be fixed I think it should be removed and we should direct people to use about:config for this (which does not cause a crash afaik). I would fix this if I know how, but I don't know where to start.
Please don't wontfix this until I get a chance to look. It may be that we have an honest-to-God bug in prototype binding teardown....
This looks to be the same crash as that described in bug 226692 comment 4.
Depends on: 226692
*** Bug 230639 has been marked as a duplicate of this bug. ***
From bug 230639, I noticed that the preference gets set before the crash; that is, when you restart the browser following the crash, the Disable XUL Cache box is checked.
Yes, yes. ;) I know exactly what's causing this bug and bug 226692 outlines the right fix. Just need to do it.
Blocks: 231369
This should be fixed now that bug 226692 is fixed. Please retest in tomorrow's build.
Just tested on trunk build: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7a) Gecko/20040216 no crash resolving
Status: NEW → RESOLVED
Closed: 21 years ago
Resolution: --- → FIXED
*** Bug 231369 has been marked as a duplicate of this bug. ***
Component: XP Toolkit/Widgets: XUL → XUL
QA Contact: shrir → xptoolkit.widgets
You need to log in before you can comment on or make changes to this bug.