Closed Bug 85048 Opened 23 years ago Closed 23 years ago

[osx]While URL popupmenu is displayed, attempting to quit(Command-Q) will cause a crash

Categories

(SeaMonkey :: Location Bar, defect, P2)

PowerPC
macOS
defect

Tracking

(Not tracked)

VERIFIED FIXED
mozilla0.9.6

People

(Reporter: chrispetersen, Assigned: paulkchen)

Details

(Keywords: crash, platform-parity)

Build : 5/30
Platform: Mac OS X
Expected results: When url popup menu has focus, quitting the application should
not function.
What I got: Application will crash while quiting.

Steps to reproduce:

1) Launch App
2) Open the url popup menu by clicking on url arrow icon.
3) While popup is displayed, press command-Q keys.
4) Application attempts to quit but a crash occurs.
5) Notice when the application is quiting , the browser window is closed but not
the popup menu.
Here's a stack trace from crashreporter:

Date/Time: 2001-06-10 10:38:07 -0700

PID:       248
Command:   Mozilla

Exception: EXC_BAD_ACCESS (0x0001)
Codes:     KERN_PROTECTION_FAILURE (0x0002) at 0x00000000

Thread 0:
 #0   0x01fb4708 in ActivateMenu__11nsMenuFrameFi ()
 #1   0x01fb46fc in ActivateMenu__11nsMenuFrameFi ()
 #2   0x01fb1bb0 in HideChain__16nsMenuPopupFrameFv ()
 #3   0x01fd1ce8 in Rollup__23nsMenuDismissalListenerFv ()
 #4   0x014a1204 in Destroy__8nsWindowFv ()
 #5   0x021b81ac in __dt__6nsViewFv ()
 #6   0x021b85e4 in Destroy__6nsViewFv ()
 #7   0x01e9bdd4 in Destroy__7nsFrameFP14nsIPresContext ()
 #8   0x01e9920c in Destroy__16nsContainerFrameFP14nsIPresContext ()
 #9   0x01f98418 in Destroy__10nsBoxFrameFP14nsIPresContext ()
 #10  0x01fb265c in Destroy__16nsMenuPopupFrameFP14nsIPresContext ()
 #11  0x01f92f9c in DestroyFrames__11nsFrameListFP14nsIPresContext ()
 #12  0x01fb3890 in Destroy__11nsMenuFrameFP14nsIPresContext ()
 #13  0x01f92f9c in DestroyFrames__11nsFrameListFP14nsIPresContext ()
 #14  0x01e991fc in Destroy__16nsContainerFrameFP14nsIPresContext ()
 #15  0x01f98418 in Destroy__10nsBoxFrameFP14nsIPresContext ()
 #16  0x01f92f9c in DestroyFrames__11nsFrameListFP14nsIPresContext ()
 #17  0x01e991fc in Destroy__16nsContainerFrameFP14nsIPresContext ()
 #18  0x01f98418 in Destroy__10nsBoxFrameFP14nsIPresContext ()
 #19  0x01f92f9c in DestroyFrames__11nsFrameListFP14nsIPresContext ()
 #20  0x01e991fc in Destroy__16nsContainerFrameFP14nsIPresContext ()
 #21  0x01f98418 in Destroy__10nsBoxFrameFP14nsIPresContext ()
 #22  0x01f92f9c in DestroyFrames__11nsFrameListFP14nsIPresContext ()
 #23  0x01e991fc in Destroy__16nsContainerFrameFP14nsIPresContext ()
 #24  0x01f98418 in Destroy__10nsBoxFrameFP14nsIPresContext ()
 #25  0x01f92f9c in DestroyFrames__11nsFrameListFP14nsIPresContext ()
 #26  0x01e991fc in Destroy__16nsContainerFrameFP14nsIPresContext ()
 #27  0x01f98418 in Destroy__10nsBoxFrameFP14nsIPresContext ()
 #28  0x01f92f9c in DestroyFrames__11nsFrameListFP14nsIPresContext ()
 #29  0x01e991fc in Destroy__16nsContainerFrameFP14nsIPresContext ()
 #30  0x01f98418 in Destroy__10nsBoxFrameFP14nsIPresContext ()
 #31  0x01f92f9c in DestroyFrames__11nsFrameListFP14nsIPresContext ()
 #32  0x01e991fc in Destroy__16nsContainerFrameFP14nsIPresContext ()
 #33  0x01f98418 in Destroy__10nsBoxFrameFP14nsIPresContext ()
 #34  0x01f92f9c in DestroyFrames__11nsFrameListFP14nsIPresContext ()
 #35  0x01e991fc in Destroy__16nsContainerFrameFP14nsIPresContext ()
 #36  0x01f98418 in Destroy__10nsBoxFrameFP14nsIPresContext ()
 #37  0x01f92f9c in DestroyFrames__11nsFrameListFP14nsIPresContext ()
 #38  0x01e991fc in Destroy__16nsContainerFrameFP14nsIPresContext ()
 #39  0x01f98418 in Destroy__10nsBoxFrameFP14nsIPresContext ()
 #40  0x01f92f9c in DestroyFrames__11nsFrameListFP14nsIPresContext ()
 #41  0x01e991fc in Destroy__16nsContainerFrameFP14nsIPresContext ()
 #42  0x01f98418 in Destroy__10nsBoxFrameFP14nsIPresContext ()
 #43  0x01f92f9c in DestroyFrames__11nsFrameListFP14nsIPresContext ()
 #44  0x01e991fc in Destroy__16nsContainerFrameFP14nsIPresContext ()
 #45  0x01f98418 in Destroy__10nsBoxFrameFP14nsIPresContext ()
 #46  0x01f92f9c in DestroyFrames__11nsFrameListFP14nsIPresContext ()
 #47  0x01e991fc in Destroy__16nsContainerFrameFP14nsIPresContext ()
 #48  0x01f98418 in Destroy__10nsBoxFrameFP14nsIPresContext ()
 #49  0x01f92f9c in DestroyFrames__11nsFrameListFP14nsIPresContext ()
 #50  0x01e991fc in Destroy__16nsContainerFrameFP14nsIPresContext ()
 #51  0x01f98418 in Destroy__10nsBoxFrameFP14nsIPresContext ()
 #52  0x01f92f9c in DestroyFrames__11nsFrameListFP14nsIPresContext ()
 #53  0x01e991fc in Destroy__16nsContainerFrameFP14nsIPresContext ()
 #54  0x01f98418 in Destroy__10nsBoxFrameFP14nsIPresContext ()
 #55  0x01f92f9c in DestroyFrames__11nsFrameListFP14nsIPresContext ()
 #56  0x01e991fc in Destroy__16nsContainerFrameFP14nsIPresContext ()
 #57  0x01f98418 in Destroy__10nsBoxFrameFP14nsIPresContext ()
 #58  0x01f92f9c in DestroyFrames__11nsFrameListFP14nsIPresContext ()
 #59  0x01e991fc in Destroy__16nsContainerFrameFP14nsIPresContext ()
 #60  0x01f98418 in Destroy__10nsBoxFrameFP14nsIPresContext ()
 #61  0x01f92f9c in DestroyFrames__11nsFrameListFP14nsIPresContext ()
 #62  0x01e991fc in Destroy__16nsContainerFrameFP14nsIPresContext ()
 #63  0x01f69e18 in Destroy__13ViewportFrameFP14nsIPresContext ()
 #64  0x01fc0b5c in Destroy__12FrameManagerFv ()
 #65  0x01eae6f8 in __dt__9PresShellFv ()
 #66  0x01eadfe0 in Release__9PresShellFv ()
 #67  0x001482e4 in __dt__13nsCOMPtr_baseFv ()
 #68  0x01978e5c in __dt__18DocumentViewerImplFv ()
 #69  0x01978864 in Release__18DocumentViewerImplFv ()
 #70  0x0014838c in assign_with_AddRef__13nsCOMPtr_baseFP11nsISupports ()
 #71  0x017655c0 in __as__28nsCOMPtr<16nsIContentViewer>FP16nsIContentViewer ()
 #72  0x0176500c in Destroy__10nsDocShellFv ()
 #73  0x01785ec0 in Destroy__10nsWebShellFv ()
 #74  0x01489dcc in Destroy__11nsXULWindowFv ()
 #75  0x0147952c in Destroy__16nsWebShellWindowFv ()
 #76  0x014846a8 in Destroy__17nsChromeTreeOwnerFv ()
 #77  0x01c9899c in ReallyCloseWindow__16GlobalWindowImplFv ()
 #78  0x01c988c0 in Close__16GlobalWindowImplFv ()
 #79  0x0147c3c0 in Quit__17nsAppShellServiceFv ()
 #80  0x00095620 in Quit__16nsMacCommandLineF8TAskSave ()
 #81  0x0009e380 in HandleQuit__18AEApplicationClassFP6AEDescPC6AEDescP6AEDesc ()
 #82  0x000a26dc in DispatchEvent__14AEGenericClassFP6AEDescPC6AEDescP6AEDesc ()
 #83  0x0009bf7c in DispatchEvent__17AEDispatchHandlerFP6AEDescPC6AEDescP6AEDesc ()
 #84  0x0009a784 in HandleRequiredSuiteEvent__11AECoreClassFPC6AEDescP6AEDesc ()
 #85  0x0009ad04 in RequiredSuiteHandler__11AECoreClassFPC6AEDescP6AEDescUl ()
 #86  0x73f2452c in _InvokeAEEventHandlerUPP ()
 #87  0x73f24744 in _TryEventTable ()
 #88  0x73f24578 in _AEMDispatcher ()
 #89  0x73f2452c in _InvokeAEEventHandlerUPP ()
 #90  0x73f241c0 in _aeResumeTheCurrentEvent ()
 #91  0x73f25cb8 in _aeSend ()
 #92  0x7389324c in _AESend ()
 #93  0x73a54604 in _SendAEToSelf ()
 #94  0x737eb820 in _HandleCompatibilityCommandEvent ()
 #95  0x737e443c in _CompatibilityEventHandler ()
 #96  0x737e13c0 in _InvokeEventHandlerUPP ()
 #97  0x737e1100 in _DispatchEventToHandlers ()
 #98  0x737e0da4 in _SendEventToEventTargetInternal ()
 #99  0x737e0cc4 in _SendEventToEventTarget ()
 #100 0x737eb348 in _SendHICommandEvent ()
 #101 0x73a276d0 in _ProcessHICommandWithModifiers ()
 #102 0x73a5a3b0 in _SendMenuItemSelectedEvent ()
 #103 0x739afdac in _HandleKeyboardEvent ()
 #104 0x738db008 in _CompatibilityMenuBarEventHandler ()
 #105 0x737e13c0 in _InvokeEventHandlerUPP ()
 #106 0x737e1100 in _DispatchEventToHandlers ()
 #107 0x737e0da4 in _SendEventToEventTargetInternal ()
 #108 0x737e1814 in _SendEventToEventTargetWithOptions ()
 #109 0x739afb0c in _HandleKeyboardEvent ()
 #110 0x737e15dc in _ToolboxEventDispatcherHandler ()
 #111 0x737e13c0 in _InvokeEventHandlerUPP ()
 #112 0x737e12b0 in _DispatchEventToHandlers ()
 #113 0x737e0da4 in _SendEventToEventTargetInternal ()
 #114 0x737e0cc4 in _SendEventToEventTarget ()
 #115 0x737e0ae0 in _ToolboxEventDispatcher ()
 #116 0x73840384 in _CallEventDispatchHook ()
 #117 0x7383ff80 in _GetOrPeekEvent ()
 #118 0x7383aea4 in _GetNextEventMatchingMask ()
 #119 0x7383ab3c in _WNEInternal ()
 #120 0x7383a9f8 in _WaitNextEvent ()
 #121 0x014b9ea8 in GetEvent__16nsMacMessagePumpFR11EventRecord ()
 #122 0x014b99b8 in DoMessagePump__16nsMacMessagePumpFv ()
 #123 0x014b92c4 in Run__10nsAppShellFv ()
 #124 0x0147c1c4 in Run__17nsAppShellServiceFv ()
 #125 0x00092c78 in main1__FiPPcP11nsISupports ()
 #126 0x000938d0 in main ()

Thread 1:
 #0   0x7000427c in _syscall ()
 #1   0x70658478 in _ProcessReadyEvent ()
 #2   0x70658270 in _CarbonSelectThreadFunc ()
 #3   0x70014f34 in __pthread_body ()

Thread 2:
 #0   0x70059b98 in _semaphore_wait_signal_trap ()
 #1   0x70016140 in _semaphore_wait_signal ()
 #2   0x70015fa8 in __pthread_cond_wait ()
 #3   0x70015d48 in _pthread_cond_wait ()
 #4   0x70653b80 in _BSD_pthread_cond_wait ()
 #5   0x70653b60 in _CarbonConditionWait ()
 #6   0x7065552c in _CarbonOperationThreadFunc ()
 #7   0x70014f34 in __pthread_body ()

Thread 3:
 #0   0x70059b78 in _semaphore_timedwait_signal_trap ()
 #1   0x7003f828 in _semaphore_timedwait_signal ()
 #2   0x70015f98 in __pthread_cond_wait ()
 #3   0x7003f7f4 in _pthread_cond_timedwait_relative_np ()
 #4   0x7029b590 in _TSWaitOnConditionTimedRelative ()
 #5   0x7029cdac in _TSWaitOnSemaphoreCommon ()
 #6   0x702e5f98 in _TSWaitOnSemaphoreRelative ()
 #7   0x702e7208 in _TimerThread ()
 #8   0x70014f34 in __pthread_body ()

Thread 4:
 #0   0x70059b98 in _semaphore_wait_signal_trap ()
 #1   0x70016140 in _semaphore_wait_signal ()
 #2   0x70015fa8 in __pthread_cond_wait ()
 #3   0x70015d48 in _pthread_cond_wait ()
 #4   0x7029b550 in _TSWaitOnCondition ()
 #5   0x7029cd94 in _TSWaitOnSemaphoreCommon ()
 #6   0x7029cce4 in _TSWaitOnSemaphore ()
 #7   0x7029cba8 in _AsyncFileThread ()
 #8   0x70014f34 in __pthread_body ()

Thread 5:
 #0   0x70059b98 in _semaphore_wait_signal_trap ()
 #1   0x70016140 in _semaphore_wait_signal ()
 #2   0x70015fa8 in __pthread_cond_wait ()
 #3   0x70015d48 in _pthread_cond_wait ()
 #4   0x70653b80 in _BSD_pthread_cond_wait ()
 #5   0x70653b60 in _CarbonConditionWait ()
 #6   0x70653a54 in _CarbonInetOperThreadFunc ()
 #7   0x70014f34 in __pthread_body ()

PPC Thread State:
  srr0: 0x01fb4708 srr1: 0x0000f030                vrsave: 0x00000000
   xer: 0x00000020   lr: 0x01fb46fc  ctr: 0x001484b8   mq: 0x00000000
    r0: 0x01fb46fc   r1: 0xbfffbf10   r2: 0x020a2000   r3: 0x00000000
    r4: 0xbfffbfb4   r5: 0x00000000   r6: 0xbfffbef0   r7: 0x00000008
    r8: 0x00000001   r9: 0x020c776c  r10: 0x00000001  r11: 0x00000001
   r12: 0x00296698  r13: 0x00000000  r14: 0x00000000  r15: 0x00000000
   r16: 0x00000000  r17: 0x00000000  r18: 0xbfffe1c8  r19: 0x00000000
   r20: 0x00000000  r21: 0x00000000  r22: 0x00000000  r23: 0x00000001
   r24: 0x00000000  r25: 0xbfffdd24  r26: 0x013679cc  r27: 0xbfffda28
   r28: 0x002a233c  r29: 0xbfffbfb4  r30: 0x00000000  r31: 0x02824768

**********
This problem is a Mac OS X issue. In the current Mac OS 9 build, the user can't
quit the application when this popup has focus.
Adding crash and pp keywords.
Severity: normal → critical
Keywords: crash, pp
In the 6/5 (or whatever) build, this doesn't occur for me. The behavior is the
same as on Mac OS 9 (can't quit while the popup is open). No crash. (10.0.3)
http://lxr.mozilla.org/seamonkey/source/layout/xul/base/src/nsMenuFrame.cpp
539       menuPopup->GetView(mPresContext, &view);
540       nsCOMPtr<nsIViewManager> viewManager;
i'm guessing view is null here [#6   0x021b85e4 in Destroy__6nsViewFv ()]:
541       view->GetViewManager(*getter_AddRefs(viewManager));

the real problem is probably that we make this call at all:
http://lxr.mozilla.org/seamonkey/source/layout/xul/base/src/nsMenuPopupFrame.cp
p#1370     menuFrame->ActivateMenu(PR_FALSE);
Actually, I deleted the older 5/30 build and used the 6/5 build. I have Mac OS
X 10.0.3 on this iBook SE. I can reproduce this problem very easily using the
steps provided. I also have branch build running under "Classic" mode on this
same machine. Can't reproduce the problem with that build. 
Summary: While URL popupmenu is displayed, attempting to quit(Command-Q) will cause a crash → [osx]While URL popupmenu is displayed, attempting to quit(Command-Q) will cause a crash
nav triage team:

Marking nsbeta1+, p2, and mozilla0.9.3. Reassigning to pchen
Assignee: alecf → pchen
Keywords: nsbeta1+
Priority: -- → P2
Target Milestone: --- → mozilla0.9.3
nav triage team:

Moving to mozilla1.0
Target Milestone: mozilla0.9.3 → mozilla1.0
crash -> moving up to mozilla0.9.5
Target Milestone: mozilla1.0 → mozilla0.9.5
any update on this?
with a 2001090408 MacOSX build the app quits gracefully- but it's not supposed
to quit at all right? aren't we just asking for trouble if we let it?
nominating bug via nsBranch keyword
Keywords: nsbranch
I don't see why quitting in response to a Cmd-Q is all that bad, even if a popup
should prevent it.  Since that appears to be the remaining extent of the
problem, nsbranch-/096
Keywords: nsbranchnsbranch-
Target Milestone: mozilla0.9.5 → mozilla0.9.6
This bug was fixed and we don't crash any more.  As for should you be able to
quit with a popup menu up?  When the user sez quit, we quit.
Status: NEW → RESOLVED
Closed: 23 years ago
Resolution: --- → FIXED
Verified in the Mac OS X Oct 4th branch build.
Keywords: vtrunk
Verified in Oct 3 OS X trunk (2001-10-03-21)
Really..
Status: RESOLVED → VERIFIED
Removing vtrunk
Keywords: vtrunk
Product: Core → SeaMonkey
You need to log in before you can comment on or make changes to this bug.