Closed Bug 155337 Opened 23 years ago Closed 16 years ago

page info died in [@ ProxyRelease] (after a skin switch?)

Categories

(Core :: XPCOM, defect, P5)

x86
Windows 2000
defect

Tracking

()

VERIFIED FIXED

People

(Reporter: timeless, Assigned: timeless)

References

Details

(Keywords: crash)

Crash Data

w2k trunk opt profile build w/ live skin/locale switching patches among other things I had page info opened, used it a bit and then decide to switch from Classic to Modern, this almost worked, but i think i crashed when i tried to close the page info window afterwards. I do have some minor patches in proxy code (I'm trying to get ProxyTest.exe to actually work properly) - ((nsStandardURL*)(nsFileURL*)((*(nsJARURI*)((nsIJARURI*)mURI.mRawPtr)).mJARFile .mRawPtr))->mSpec {...} |+ nsAFlatCString {...} |- nsStr {...} |\+ mStr 0x0752ffb8 "resource:///chrome/comm.jar" ... - ((*(nsJARURI*)((nsIJARURI*)mURI.mRawPtr)).mJAREntry) {...} |+ nsAFlatCString {...} |- nsStr {...} |\+ mStr 0x036be5d8 "content/navigator/pageInfo.xul" ... this crash happened after switching skins (live switch) ProxyRelease(nsIEventQueue * 0x00000000, nsIRequestObserver * 0x07dd616c) line 87 + 7 bytes nsRequestObserverProxy::~nsRequestObserverProxy(nsRequestObserverProxy * const 0x0b0c3148) line 229 + 9 bytes nsRequestObserverProxy::`scalar deleting destructor'(nsRequestObserverProxy * const 0x0b0c3148, unsigned int 1) + 8 bytes nsRequestObserverProxy::Release(nsRequestObserverProxy * const 0x057ec3f8) line 239 + 32 bytes nsStreamListenerProxy::~nsStreamListenerProxy(nsStreamListenerProxy * const 0x0b0c3148) line 91 + 13 bytes nsStreamListenerProxy::`scalar deleting destructor'(nsStreamListenerProxy * const 0x0b0c3148, unsigned int 1) + 8 bytes nsStreamListenerProxy::Release(nsStreamListenerProxy * const 0x024b1750) line 226 + 32 bytes nsCOMPtr_base::~nsCOMPtr_base(nsCOMPtr_base * const 0x0b0c3148) line 65 NS_NewStreamListenerProxy(nsIStreamListener * * 0x024b1750, nsIStreamListener * 0x07dd616c, nsIEventQueue * 0x00000000, unsigned int 4096, unsigned int 16384) line 483 + 9 bytes nsFileTransport::AsyncRead(nsFileTransport * const 0x00b66b48, nsIStreamListener * 0x07dd616c, nsISupports * 0x00000000, unsigned int 0, unsigned int 4294967295, unsigned int 0, nsIRequest * * 0x07dd61f0) line 518 nsJARChannel::AsyncReadJARElement(nsJARChannel * const 0x0b0c3148) line 364 nsJARChannel::EnsureJARFileAvailable(nsJARChannel * const 0x0b0c3148) line 320 nsJARChannel::AsyncOpen(nsJARChannel * const 0x07dd6168, nsIStreamListener * 0x0b2e4b80, nsISupports * 0x00000000) line 280 nsDocumentOpenInfo::Open(nsDocumentOpenInfo * const 0x0b0c3148, nsIChannel * 0x07dd6168, int 0, nsISupports * 0x0b9f03f8) line 175 nsURILoader::OpenURIVia(nsURILoader * const 0x00ba5300, nsIChannel * 0x07dd6168, int 0, nsISupports * 0x0b9f03f8, unsigned int 0) line 538 + 16 bytes nsURILoader::OpenURI(nsURILoader * const 0x00ba5300, nsIChannel * 0x07dd6168, int 0, nsISupports * 0x0b9f03f8) line 500 nsDocShell::DoChannelLoad(nsDocShell * const 0x0b0c3148, nsIChannel * 0x00000003, nsIURILoader * 0x00ba5300) line 5238 nsDocShell::DoURILoad(nsDocShell * const 0x0b0c3148, nsIURI * 0x07a9fdb0, nsIURI * 0x00b5b708, nsISupports * 0x00000000, nsIInputStream * 0x00000000, nsIInputStream * 0x00000000, int 1, nsIDocShell * * 0x00000000, nsIRequest * * 0x00000000) line 5017 nsDocShell::InternalLoad(nsDocShell * const 0x0b9f03f8, nsIURI * 0x07a9fdb0, nsIURI * 0x00b5b708, nsISupports * 0x00000000, int 0, const unsigned short * 0x07d491f8, nsIInputStream * 0x00000000, nsIInputStream * 0x00000000, unsigned int 1, nsISHEntry * 0x00000000, int 1, nsIDocShell * * 0x00000000, nsIRequest * * 0x00000000) line 4805 nsDocShell::LoadURI(nsDocShell * const 0x00000000, nsIURI * 0x07a9fdb0, nsIDocShellLoadInfo * 0x00b5b708, unsigned int 1, int 1) line 666 + 53 bytes nsWindowWatcher::OpenWindowJS(nsWindowWatcher * const 0x05417780, nsIDOMWindow * 0x019595dc, const char * 0x01983da0, const char * 0x00b5aec0, const char * 0x80000001, int 11906840, unsigned int 11908872, long * 0x06fcf330, nsIDOMWindow * * 0x00aff698) line 697 GlobalWindowImpl::OpenInternal(GlobalWindowImpl * const 0x019595d8, const nsAString & {...}, const nsAString & {...}, const nsAString & {...}, int 1, long * 0x075581b0, unsigned int 5, nsISupports * 0x00000000, nsIDOMWindow * * 0x0012ec48) line 4177 GlobalWindowImpl::OpenDialog(GlobalWindowImpl * const 0x019595e0, nsIDOMWindow * * 0x0012ec48) line 2971 + 45 bytes XPTC_InvokeByIndex(nsISupports * 0x019595e0, unsigned int 16, unsigned int 1, nsXPTCVariant * 0x0012ec48) line 106 XPCWrappedNative::CallMethod(XPCCallContext & {...}, XPCWrappedNative::CallMode -1833961832) line 1994 + 22 bytes XPC_WN_CallMethod(JSContext * 0x00b5af18, JSObject * 0x00aff698, unsigned int 5, long * 0x00b70b9c, long * 0x00b70ae8) line 1266 + 10 bytes js_Invoke(JSContext * 0x00000001, unsigned int 5, unsigned int 0) line 788 + 17 bytes js_Interpret(JSContext * 0x00b5af18, long * 0x0012f0bc) line 2744 js_Invoke(JSContext * 0x00000001, unsigned int 1, unsigned int 2) line 805 + 10 bytes js_InternalInvoke(JSContext * 0x00b5af40, JSObject * 0x04a3ab60, long 37191632, unsigned int 0, unsigned int 1, long * 0x0012f2a0, long * 0x0012f1d4) line 880 + 13 bytes JS_CallFunctionValue(JSContext * 0x00b5af18, JSObject * 0x04a3ab60, long 37191632, unsigned int 1, long * 0x0012f2a0, long * 0x0012f1d4) line 3428 + 26 bytes nsJSContext::CallEventHandler(nsJSContext * const 0x00b4f990, void * 0x04a3ab60, void * 0x02377fd0, unsigned int 1, void * 0x0012f2a0, int * 0x0012f284, int 0) line 1042 + 25 bytes nsJSEventListener::HandleEvent(nsJSEventListener * const 0x00b5af18, nsIDOMEvent * 0x077c8630) line 182 + 30 bytes nsEventListenerManager::HandleEventSubType(nsEventListenerManager * const 0x0b0c3148, nsListenerStruct * 0x0715acc8, nsIDOMEvent * 0x077c8630, nsIDOMEventTarget * 0x0ab5b960, unsigned int 125601336, unsigned int 117240624) line 1221 + 14 bytes nsEventListenerManager::HandleEvent(nsEventListenerManager * const 0x024eb3f0, nsIPresContext * 0x00000000, nsEvent * 0x0012f868, nsIDOMEvent * * 0x00000000, nsIDOMEventTarget * 0x0ab5b960, unsigned int 7, nsEventStatus * 0x0012fa44) line 1396 + 16 bytes nsXULElement::HandleDOMEvent(nsXULElement * const 0x10047f14 const nsDefaultStringComparator::`vftable', nsIPresContext * 0x07439008, nsEvent * 0x0885e8c8, nsIDOMEvent * * 0x0012f774, unsigned int 1, nsEventStatus * 0x0012fa44) line 3447 PresShell::HandleEventInternal(PresShell * const 0x0b0c3148, nsEvent * 0x0012f868, nsIView * 0x00000000, unsigned int 1, nsEventStatus * 0x0012fa44) line 6190 + 18 bytes PresShell::HandleEventWithTarget(PresShell * const 0x07c8df58, nsEvent * 0x0012f868, nsIFrame * 0x0a88fa6c, nsIContent * 0x0ab5b958, unsigned int 1, nsEventStatus * 0x0012fa44) line 6160 nsEventStateManager::CheckForAndDispatchClick(nsEventStateManager * const 0x07c8df58, nsIPresContext * 0x07439008, nsMouseEvent * 0x0012fb10, nsEventStatus * 0x0012fa44) line 2754 nsEventStateManager::PostHandleEvent(nsEventStateManager * const 0x0ab45bd8, nsIPresContext * 0x07439008, nsEvent * 0x0012fb10, nsIFrame * 0x0a88fa6c, nsEventStatus * 0x0012fa44, nsIView * 0x03760f88) line 1758 + 16 bytes PresShell::HandleEventInternal(PresShell * const 0x0b0c3148, nsEvent * 0x0ab5b958, nsIView * 0x03760f88, unsigned int 1, nsEventStatus * 0x0012fa44) line 6210 + 23 bytes PresShell::HandleEvent(PresShell * const 0x0ab45bd8, nsIView * 0x03760f88, nsGUIEvent * 0x0012fb10, nsEventStatus * 0x0012fa44, int 1, int & 1) line 6113 + 18 bytes nsViewManager::HandleEvent(nsViewManager * const 0x0b0c3148, nsView * 0x00000000, nsGUIEvent * 0x0012fb10, int 1) line 2085 nsView::HandleEvent(nsView * const 0x0b0c3148, nsViewManager * 0x073f3df8, nsGUIEvent * 0x0012fb10, int 1) line 306 nsViewManager::DispatchEvent(nsViewManager * const 0x073f3df8, nsGUIEvent * 0x03760f88, nsEventStatus * 0x0012fac0) line 1890 + 30 bytes HandleEvent(nsGUIEvent * 0x0012fb10) line 83 nsWindow::DispatchEvent(nsWindow * const 0x0253261c, nsGUIEvent * 0x0012fb10, nsEventStatus & nsEventStatus_eIgnore) line 1037 nsWindow::DispatchWindowEvent(nsWindow * const 0x0b0c3148, nsGUIEvent * 0x00000000) line 1054 nsWindow::DispatchMouseEvent(nsWindow * const 0x0b0c3148, unsigned int 301, unsigned int 0, nsPoint * 0x00000000) line 4960 ChildWindow::DispatchMouseEvent(ChildWindow * const 0x0b0c3148, unsigned int 301, unsigned int 0, nsPoint * 0x00000000) line 5214 + 19 bytes nsWindow::ProcessMessage(nsWindow * const 0x0b0c3148, unsigned int 514, unsigned int 0, long 40895238, long * 0x0012fd90) line 3770 nsWindow::WindowProc(HWND__ * 0x00850d20, unsigned int 0, unsigned int 0, long 39003676) line 1298 + 16 bytes USER32! 77e11b60() USER32! 77e11cca() USER32! 77e183f1() nsAppShellService::Run(nsAppShellService * const 0x0026c1c8) line 458 main1(int 3, char * * 0x00262ed8, nsISupports * 0x00262f20) line 1456 + 9 bytes main(int 3, char * * 0x00262ed8) line 1805 + 26 bytes WinMain(HINSTANCE__ * 0x00400000, HINSTANCE__ * 0x00400000, char * 0x00133469, HINSTANCE__ * 0x00400000) line 1825 + 23 bytes MOZILLA! WinMainCRTStartup + 308 bytes KERNEL32! 77e8d326() eventQ is null, which is why we're crashing. The caller has: - mEventQ {...} \- nsCOMPtr_base {...} \- mRawPtr 0x0b0c3154 \- __vfptr 0x0b0c3154 | [0] 0x0b0c3154 | [1] 0x0b0c3154 | [2] 0x00000000 which is a bit strange... fwiw nsWindowWatcher::OpenWindowJS was trying to load: + mStr 0x0aae3ad8 "chrome://navigator/content/pageInfo.xul" I'm trying to figure out whether a simple null check is acceptable and how the caller ended up w/ what doesn't appear to be a valid eventqueue comptr...
Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.1a+) Gecko/20020702: 1. I opened page info (Ctrl+I), 2. applied new theme (View -> Apply Theme -> Modern), 3. received Apply Theme Dialogue: These changes will take effect when you restart Mozilla" 4. Closed Page Info 5. Closed 'OK' on Apply Theme Dialogue. Everything works fine. Also then restarted and tried 1,2 (used different theme; Skypilot), 3, 5, 4, and everything still works. also tried the above scenarios using Mozilla 0.9.9 on RedHat Linux with no errors. The only difference is that themes were applied instantly (no step 3 or 5). Hope this helps!
Keywords: crash
I have also tested this, using the comments given, and have not been able to make it crash. Im using: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.4b) Gecko/20030412 Since we are no longer using live switching of themes, Reporter perhaps you could retest this bug and indicate if it is still valid.
Depends on: 134260
Summary: page info died in [@ProxyRelease] (after a skin switch?) → page info died in [@ ProxyRelease] (after a skin switch?)
if you can't follow the steps to reproduce (which you can't because you need custom changes - live skin switching) then please leave the bug alone. i'll address it later. open bugs do not hurt people. people commenting in bugs hurt people.
Assignee: dougt → timeless
Blocks: 134260
No longer depends on: 134260
Status: UNCONFIRMED → NEW
Ever confirmed: true
Priority: -- → P5
QA Contact: scc → xpcom
large piles of open crash bugs do hurt people, since the obscure the smaller number of crash bugs that really need focus and attention. we ought to figure out what to do with this so we can move on to reducing the number of open crash bugs down to a manageable load.
Status: NEW → RESOLVED
Closed: 16 years ago
Resolution: --- → INCOMPLETE
This bug is no longer reproducable.
Status: RESOLVED → VERIFIED
Resolution: INCOMPLETE → FIXED
Crash Signature: [@ ProxyRelease]
You need to log in before you can comment on or make changes to this bug.