Closed Bug 153756 Opened 24 years ago Closed 17 years ago

race condition? allowed mDragService to be null at ()->EndDragSession() in nsNativeDragTarget::Drop

Categories

(Core :: DOM: Copy & Paste and Drag & Drop, defect)

x86
Windows 2000
defect
Not set
critical

Tracking

()

VERIFIED DUPLICATE of bug 336586
Future

People

(Reporter: timeless, Assigned: timeless)

Details

cvs debug trunk build from this weekend w/ patches for live skin/locale switching I was shutting down and spent a lot of time ignoring things like this: ###!!! ASSERTION: root element not in document: 'doc != nsnull', file f:\build\mozilla\content\xul\templates\src\nsXULContentBuilder.cpp, line 1558 the last lines of my console before i died: vnk: Error ``setting a property that has only a getter'' [xs] in file ``(null)'', line 0, character 0. WEBSHELL- = 14 vnk: Error ``setting a property that has only a getter'' [xs] in file ``(null)'', line 0, character 0. WEBSHELL- = 13 vnk: Error ``setting a property that has only a getter'' [xs] in file ``(null)'', line 0, character 0. vnk: Error ``setting a property that has only a getter'' [xs] in file ``(null)'', line 0, character 0. WEBSHELL- = 12 WARNING: requested removal of nonexistent window, file f:\build\mozilla\embedding\components\windowwatcher\src\nsWindowWatcher.cpp, line 855 vnk: Error ``setting a property that has only a getter'' [xs] in file ``(null)'', line 0, character 0. WEBSHELL- = 11 ###!!! ASSERTION: root element not in document: 'doc != nsnull', file f:\build\mozilla\content\xul\templates\src\nsXULContentBuilder.cpp, line 1558 Break: at file f:\build\mozilla\content\xul\templates\src\nsXULContentBuilder.cpp, line 1558 ###!!! ASSERTION: root element not in document: 'doc != nsnull', file f:\build\mozilla\content\xul\templates\src\nsXULContentBuilder.cpp, line 1558 Break: at file f:\build\mozilla\content\xul\templates\src\nsXULContentBuilder.cpp, line 1558 vnk: Application venkman, 'JavaScript Debugger' unloading. WEBSHELL- = 10 WEBSHELL- = 9 WEBSHELL- = 8 My stack: nsNativeDragTarget::Drop(nsNativeDragTarget * const 0x063c33c0, IDataObject * 0x03de65b8, unsigned long 0, _POINTL {...}, unsigned long * 0x001279f8) line 336 + 12 bytes OLE32! 77b1260a() OLE32! 77b127f2() OLE32! 77ada50d() OLE32! 77ada2d3() nsDragService::StartInvokingDragSession(nsDragService * const 0x01365e20, IDataObject * 0x03de65b8, unsigned int 7) line 159 + 25 bytes nsDragService::InvokeDragSession(nsDragService * const 0x01365e20, nsIDOMNode * 0x06696014, nsISupportsArray * 0x079b7960, nsIScriptableRegion * 0x00000000, unsigned int 7) line 128 XPTC_InvokeByIndex(nsISupports * 0x01365e20, unsigned int 3, unsigned int 4, nsXPTCVariant * 0x00127c2c) line 106 XPCWrappedNative::CallMethod(XPCCallContext & {...}, XPCWrappedNative::CallMode CALL_METHOD) line 1994 + 42 bytes XPC_WN_CallMethod(JSContext * 0x03e7e528, JSObject * 0x0855e7b8, unsigned int 4, long * 0x05d17e3c, long * 0x00127ed0) line 1266 + 14 bytes js_Invoke(JSContext * 0x03e7e528, unsigned int 4, unsigned int 0) line 788 + 23 bytes js_Interpret(JSContext * 0x03e7e528, long * 0x001287e8) line 2743 + 15 bytes js_Invoke(JSContext * 0x03e7e528, unsigned int 1, unsigned int 2) line 805 + 13 bytes js_InternalInvoke(JSContext * 0x03e7e528, JSObject * 0x064848f0, long 139003768, unsigned int 0, unsigned int 1, long * 0x00128a40, long * 0x00128910) line 880 + 20 bytes JS_CallFunctionValue(JSContext * 0x03e7e528, JSObject * 0x064848f0, long 139003768, unsigned int 1, long * 0x00128a40, long * 0x00128910) line 3428 + 31 bytes nsJSContext::CallEventHandler(nsJSContext * const 0x03e7e390, void * 0x064848f0, void * 0x08490778, unsigned int 1, void * 0x00128a40, int * 0x00128a44, int 0) line 1042 + 33 bytes nsJSEventListener::HandleEvent(nsJSEventListener * const 0x06644d08, nsIDOMEvent * 0x07e29d40) line 182 + 77 bytes nsEventListenerManager::HandleEventSubType(nsListenerStruct * 0x05fc08b8, nsIDOMEvent * 0x07e29d40, nsIDOMEventTarget * 0x06644ca8, unsigned int 16, unsigned int 2) line 1221 + 20 bytes nsEventListenerManager::HandleEvent(nsEventListenerManager * const 0x06644e40, nsIPresContext * 0x061b16f8, nsEvent * 0x00129efc, nsIDOMEvent * * 0x00129ea8, nsIDOMEventTarget * 0x06644ca8, unsigned int 2, nsEventStatus * 0x00129f44) line 2043 + 36 bytes nsXULElement::HandleDOMEvent(nsXULElement * const 0x06644ca0, nsIPresContext * 0x061b16f8, nsEvent * 0x00129efc, nsIDOMEvent * * 0x00129ea8, unsigned int 2, nsEventStatus * 0x00129f44) line 3447 nsXULElement::HandleDOMEvent(nsXULElement * const 0x066ce440, nsIPresContext * 0x061b16f8, nsEvent * 0x00129efc, nsIDOMEvent * * 0x00129ea8, unsigned int 2, nsEventStatus * 0x00129f44) line 3464 + 50 bytes nsXULElement::HandleDOMEvent(nsXULElement * const 0x06149830, nsIPresContext * 0x061b16f8, nsEvent * 0x00129efc, nsIDOMEvent * * 0x00129ea8, unsigned int 2, nsEventStatus * 0x00129f44) line 3464 + 50 bytes nsXULElement::HandleDOMEvent(nsXULElement * const 0x06696010, nsIPresContext * 0x061b16f8, nsEvent * 0x00129efc, nsIDOMEvent * * 0x00129ea8, unsigned int 1, nsEventStatus * 0x00129f44) line 3464 + 50 bytes nsEventStateManager::GenerateDragGesture(nsIPresContext * 0x061b16f8, nsGUIEvent * 0x0012a864) line 1337 nsEventStateManager::PreHandleEvent(nsEventStateManager * const 0x061bfde0, nsIPresContext * 0x061b16f8, nsEvent * 0x0012a864, nsIFrame * 0x067ac95c, nsEventStatus * 0x0012a660, nsIView * 0x063aa718) line 389 PresShell::HandleEventInternal(nsEvent * 0x0012a864, nsIView * 0x063aa718, unsigned int 1, nsEventStatus * 0x0012a660) line 6172 + 43 bytes PresShell::HandleEvent(PresShell * const 0x0625c02c, nsIView * 0x063aa718, nsGUIEvent * 0x0012a864, nsEventStatus * 0x0012a660, int 1, int & 1) line 6101 + 25 bytes nsViewManager::HandleEvent(nsView * 0x063aa718, nsGUIEvent * 0x0012a864, int 1) line 2085 nsView::HandleEvent(nsViewManager * 0x063aa4d8, nsGUIEvent * 0x0012a864, int 1) line 306 nsViewManager::DispatchEvent(nsViewManager * const 0x063aa4d8, nsGUIEvent * 0x0012a864, nsEventStatus * 0x0012a764) line 1890 + 23 bytes HandleEvent(nsGUIEvent * 0x0012a864) line 83 nsWindow::DispatchEvent(nsWindow * const 0x063aa7b4, nsGUIEvent * 0x0012a864, nsEventStatus & nsEventStatus_eIgnore) line 1025 + 10 bytes nsWindow::DispatchWindowEvent(nsGUIEvent * 0x0012a864) line 1046 nsWindow::DispatchMouseEvent(unsigned int 300, unsigned int 1, nsPoint * 0x00000000) line 4930 + 21 bytes ChildWindow::DispatchMouseEvent(unsigned int 300, unsigned int 1, nsPoint * 0x00000000) line 5187 nsWindow::ProcessMessage(unsigned int 512, unsigned int 1, long 5374132, long * 0x0012ac84) line 3758 + 28 bytes nsWindow::WindowProc(HWND__ * 0x003817cc, unsigned int 512, unsigned int 1, long 5374132) line 1290 + 27 bytes USER32! 77e11b60() USER32! 77e11cca() USER32! 77e183f1() nsXULWindow::ShowModal(nsXULWindow * const 0x05f599e0) line 284 nsWebShellWindow::ShowModal(nsWebShellWindow * const 0x05f599e0) line 1110 nsContentTreeOwner::ShowAsModal(nsContentTreeOwner * const 0x05a2c3c4) line 450 nsWindowWatcher::OpenWindowJS(nsWindowWatcher * const 0x0138bce4, nsIDOMWindow * 0x03eca3fc, const char * 0x01a779f8, const char * 0x01a78114, const char * 0x01a780f0, int 1, unsigned int 1, long * 0x05ee2f90, nsIDOMWindow * * 0x0012b114) line 708 nsWindowWatcher::OpenWindow(nsWindowWatcher * const 0x0138bce0, nsIDOMWindow * 0x03eca3fc, const char * 0x01a779f8, const char * 0x01a78114, const char * 0x01a780f0, nsISupports * 0x05ba09f8, nsIDOMWindow * * 0x0012b114) line 454 + 48 bytes nsPromptService::DoDialog(nsPromptService * const 0x045d75bc, nsIDOMWindow * 0x03eca3fc, nsIDialogParamBlock * 0x05ba09f8, const char * 0x01a779f8) line 629 + 77 bytes nsPromptService::Alert(nsPromptService * const 0x045d75b8, nsIDOMWindow * 0x03eca3fc, const unsigned short * 0x05e116c8, const unsigned short * 0x05f45c88) line 137 + 39 bytes nsPrompt::Alert(nsPrompt * const 0x05e18ae0, const unsigned short * 0x00000000, const unsigned short * 0x05f45c88) line 125 nsWebShell::EndPageLoad(nsIWebProgress * 0x05cb4eac, nsIChannel * 0x05d07c78, unsigned int 2152857618) line 750 nsDocShell::OnStateChange(nsDocShell * const 0x05c6507c, nsIWebProgress * 0x05cb4eac, nsIRequest * 0x05d07c78, unsigned int 131088, unsigned int 2152857618) line 3869 nsDocLoaderImpl::FireOnStateChange(nsIWebProgress * 0x05cb4eac, nsIRequest * 0x05d07c78, int 131088, unsigned int 2152857618) line 1192 nsDocLoaderImpl::doStopDocumentLoad(nsIRequest * 0x05d07c78, unsigned int 2152857618) line 834 nsDocLoaderImpl::DocLoaderIsEmpty() line 732 nsDocLoaderImpl::OnStopRequest(nsDocLoaderImpl * const 0x05cb4e9c, nsIRequest * 0x05d07c78, nsISupports * 0x00000000, unsigned int 2152857618) line 663 nsLoadGroup::RemoveRequest(nsLoadGroup * const 0x05cb4fb8, nsIRequest * 0x05d07c78, nsISupports * 0x00000000, unsigned int 2152857618) line 532 + 35 bytes nsFileChannel::OnStopRequest(nsFileChannel * const 0x05d07c80, nsIRequest * 0x046ec66c, nsISupports * 0x00000000, unsigned int 2152857618) line 527 nsOnStopRequestEvent::HandleEvent() line 213 nsARequestObserverEvent::HandlePLEvent(PLEvent * 0x05e10cdc) line 116 PL_HandleEvent(PLEvent * 0x05e10cdc) line 596 + 10 bytes PL_ProcessPendingEvents(PLEventQueue * 0x05f19bc0) line 526 + 9 bytes nsEventQueueImpl::ProcessPendingEvents(nsEventQueueImpl * const 0x05f19b68) line 388 + 12 bytes nsEventQueueServiceImpl::PopThreadEventQueue(nsEventQueueServiceImpl * const 0x00c5ce80, nsIEventQueue * 0x05f19b68) line 336 EventQueueAutoPopper::~EventQueueAutoPopper() line 300 nsWindowWatcher::OpenWindowJS(nsWindowWatcher * const 0x0138bce4, nsIDOMWindow * 0x03eca3fc, const char * 0x05f198b8, const char * 0x05f19920, const char * 0x05f19958, int 1, unsigned int 1, long * 0x05f2ae4c, nsIDOMWindow * * 0x0012c40c) line 711 + 37 bytes GlobalWindowImpl::OpenInternal(GlobalWindowImpl * const 0x03eca3f8, const nsAString & {...}, const nsAString & {...}, const nsAString & {...}, int 1, long * 0x05f2ae40, unsigned int 4, nsISupports * 0x00000000, nsIDOMWindow * * 0x0012c7d0) line 4167 + 129 bytes GlobalWindowImpl::OpenDialog(GlobalWindowImpl * const 0x03eca400, nsIDOMWindow * * 0x0012c7d0) line 2962 + 59 bytes XPTC_InvokeByIndex(nsISupports * 0x03eca400, unsigned int 16, unsigned int 1, nsXPTCVariant * 0x0012c7d0) line 106 XPCWrappedNative::CallMethod(XPCCallContext & {...}, XPCWrappedNative::CallMode CALL_METHOD) line 1994 + 42 bytes XPC_WN_CallMethod(JSContext * 0x058c7248, JSObject * 0x03e6fac8, unsigned int 4, long * 0x05f2ae40, long * 0x0012ca74) line 1266 + 14 bytes js_Invoke(JSContext * 0x058c7248, unsigned int 4, unsigned int 0) line 788 + 23 bytes js_Interpret(JSContext * 0x058c7248, long * 0x0012d38c) line 2743 + 15 bytes js_Invoke(JSContext * 0x058c7248, unsigned int 2, unsigned int 2) line 805 + 13 bytes nsXPCWrappedJSClass::CallMethod(nsXPCWrappedJSClass * const 0x05e5b570, nsXPCWrappedJS * 0x05e7ce28, unsigned short 5, const nsXPTMethodInfo * 0x05e5c690, nsXPTCMiniVariant * 0x0012d8cc) line 1193 + 22 bytes nsXPCWrappedJS::CallMethod(nsXPCWrappedJS * const 0x05e7ce28, unsigned short 5, const nsXPTMethodInfo * 0x05e5c690, nsXPTCMiniVariant * 0x0012d8cc) line 430 PrepareAndDispatch(nsXPTCStubBase * 0x05e7ce28, unsigned int 5, unsigned int * 0x0012d97c, unsigned int * 0x0012d96c) line 115 + 31 bytes SharedStub() line 139 nsControllerCommandManager::DoCommand(nsControllerCommandManager * const 0x05e7d0b8, const nsAString & {...}, nsISupports * 0x05e4b170) line 189 + 31 bytes nsComposerController::DoCommand(nsComposerController * const 0x05e7a1b0, const nsAString & {...}) line 240 XPTC_InvokeByIndex(nsISupports * 0x05e7a1b0, unsigned int 5, unsigned int 1, nsXPTCVariant * 0x0012db54) line 106 XPCWrappedNative::CallMethod(XPCCallContext & {...}, XPCWrappedNative::CallMode CALL_METHOD) line 1994 + 42 bytes XPC_WN_CallMethod(JSContext * 0x058c7248, JSObject * 0x05e86ed0, unsigned int 1, long * 0x05f2adfc, long * 0x0012ddf8) line 1266 + 14 bytes js_Invoke(JSContext * 0x058c7248, unsigned int 1, unsigned int 0) line 788 + 23 bytes js_Interpret(JSContext * 0x058c7248, long * 0x0012e710) line 2743 + 15 bytes js_Invoke(JSContext * 0x058c7248, unsigned int 1, unsigned int 2) line 805 + 13 bytes js_InternalInvoke(JSContext * 0x058c7248, JSObject * 0x04b94308, long 99118784, unsigned int 0, unsigned int 1, long * 0x0012e968, long * 0x0012e838) line 880 + 20 bytes JS_CallFunctionValue(JSContext * 0x058c7248, JSObject * 0x04b94308, long 99118784, unsigned int 1, long * 0x0012e968, long * 0x0012e838) line 3428 + 31 bytes nsJSContext::CallEventHandler(nsJSContext * const 0x058c70b0, void * 0x04b94308, void * 0x05e86ec0, unsigned int 1, void * 0x0012e968, int * 0x0012e96c, int 0) line 1042 + 33 bytes nsJSEventListener::HandleEvent(nsJSEventListener * const 0x05be7240, nsIDOMEvent * 0x05cff268) line 182 + 77 bytes nsEventListenerManager::HandleEventSubType(nsListenerStruct * 0x05a214e8, nsIDOMEvent * 0x05cff268, nsIDOMEventTarget * 0x05b500f0, unsigned int 8, unsigned int 7) line 1221 + 20 bytes nsEventListenerManager::HandleEvent(nsEventListenerManager * const 0x05be71d8, nsIPresContext * 0x058cfdc8, nsEvent * 0x0012f488, nsIDOMEvent * * 0x0012f338, nsIDOMEventTarget * 0x05b500f0, unsigned int 7, nsEventStatus * 0x0012f4d4) line 2218 + 36 bytes nsXULElement::HandleDOMEvent(nsXULElement * const 0x05b500e8, nsIPresContext * 0x058cfdc8, nsEvent * 0x0012f488, nsIDOMEvent * * 0x0012f338, unsigned int 1, nsEventStatus * 0x0012f4d4) line 3447 PresShell::HandleDOMEventWithTarget(PresShell * const 0x058d4018, nsIContent * 0x05b500e8, nsEvent * 0x0012f488, nsEventStatus * 0x0012f4d4) line 6225 + 36 bytes nsMenuFrame::Execute() line 1700 nsMenuFrame::HandleEvent(nsMenuFrame * const 0x05ee1e6c, nsIPresContext * 0x058cfdc8, nsGUIEvent * 0x0012f8cc, nsEventStatus * 0x0012f6c8) line 502 PresShell::HandleEventInternal(nsEvent * 0x0012f8cc, nsIView * 0x05d07550, unsigned int 1, nsEventStatus * 0x0012f6c8) line 6193 + 38 bytes PresShell::HandleEvent(PresShell * const 0x058d401c, nsIView * 0x05d07550, nsGUIEvent * 0x0012f8cc, nsEventStatus * 0x0012f6c8, int 0, int & 1) line 6101 + 25 bytes nsViewManager::HandleEvent(nsView * 0x05e37648, nsGUIEvent * 0x0012f8cc, int 0) line 2085 nsView::HandleEvent(nsViewManager * 0x058d06c8, nsGUIEvent * 0x0012f8cc, int 0) line 306 nsViewManager::DispatchEvent(nsViewManager * const 0x058d06c8, nsGUIEvent * 0x0012f8cc, nsEventStatus * 0x0012f7cc) line 1890 + 23 bytes HandleEvent(nsGUIEvent * 0x0012f8cc) line 83 nsWindow::DispatchEvent(nsWindow * const 0x05cfc6cc, nsGUIEvent * 0x0012f8cc, nsEventStatus & nsEventStatus_eIgnore) line 1025 + 10 bytes nsWindow::DispatchWindowEvent(nsGUIEvent * 0x0012f8cc) line 1046 nsWindow::DispatchMouseEvent(unsigned int 301, unsigned int 0, nsPoint * 0x00000000) line 4930 + 21 bytes ChildWindow::DispatchMouseEvent(unsigned int 301, unsigned int 0, nsPoint * 0x00000000) line 5187 nsWindow::ProcessMessage(unsigned int 514, unsigned int 0, long 1900571, long * 0x0012fcec) line 3781 + 28 bytes nsWindow::WindowProc(HWND__ * 0x00950fc8, unsigned int 514, unsigned int 0, long 1900571) line 1290 + 27 bytes USER32! 77e11b60() USER32! 77e11cca() USER32! 77e183f1() nsAppShellService::Run(nsAppShellService * const 0x0138c978) line 458 main1(int 3, char * * 0x00304420, nsISupports * 0x00000000) line 1456 + 32 bytes main(int 3, char * * 0x00304420) line 1805 + 37 bytes mainCRTStartup() line 338 + 17 bytes KERNEL32! 77e8d326() The function: STDMETHODIMP nsNativeDragTarget::Drop(LPDATAOBJECT pData, DWORD grfKeyState, POINTL aPT, LPDWORD pdwEffect) { if (mDragService) { // Set the native data object into the drag service // // This cast is ok because in the constructor we created a // the actual implementation we wanted, so we know this is // a nsDragService (but it should still be a private interface) nsDragService * winDragService = NS_STATIC_CAST(nsDragService *, mDragService); winDragService->SetIDataObject(pData); // Now process the native drag state and then dispatch the event ProcessDrag(pData, NS_DRAGDROP_DROP, grfKeyState, aPT, pdwEffect); // tell the drag service we're done with the session => mDragService->EndDragSession(); return S_OK; } else return ResultFromScode(E_FAIL); } - this 0x063c33c0 |- IDropTarget {...} |\- IUnknown {...} | \+ __vfptr 0x00000000 | m_cRef 0 |- mHWnd 0x00ca3118 |\ unused 13262896 | mCanMove 0 |+ mWindow 0x00000000 \+ mDragService 0x00000000 Threadlist: <NTDLL/KERNEL32/KERNEL32> <NTDLL/KERNEL32/8b000000> TimerThread nsThreadPoolRunnable MemoryFlusher nsDNSService <NTDLL/RPCRT4/RPCRT4/KERNEL32> nsSocketTransportService (currently handling some nsHttpConnection) {crashed main thread} Things to change: 1. else after return 2. indentation 3. logic :) /widget/src/windows/nsNativeDragTarget.cpp, line 95 -- nsServiceManager::ReleaseService(kCDragServiceCID, mDragService); is where mDragService can become null. nsWindow::EnableDragDrop is the caller that eventually sets up and destroys mDragService fwiw 0 [native frame] 1 anonymous(aEvent = [object Event @ 0x3d46d88], aDragDropObserver = [object Object]) ["chrome://global/content/nsDragAn dDrop.js":155] kDSIID = nsIDragService dragAction = [object Object] transferData = [object Object] transArray = [xpconnect wrapped nsISupportsArray @ 0x79b79c8] region = null tree = undefined obo = undefined bo = undefined obosel = undefined rowX = undefined rowY = undefined rowHeight = undefined rowWidth = undefined i = undefined count = 0 trans = [xpconnect wrapped nsITransferable @ 0x67e8f18] this = [object Object] 2 ondraggesture(event = [object Event @ 0x3d46d88]) ["<unknown>":0] this = [object XULElement @ 0x6748e98] 3 [native frame] I had a few dialogs open that i couldn't close: preferences composer alert saying it couldn't open a chatzilla dtd -- since it was a trivial null pointer access, i was able to continue tare down, the following is for my own reference: 0 [native frame] 1 anonymous(aCommand = "cmd_openRemote", [xpconnect wrapped nsIEditorShell @ 0x5e4fe90]) ["chrome://editor/content/Compo serCommands.js":1887] this = [object Object] 2 [native frame] 3 goDoCommand(command = "cmd_openRemote") ["chrome://global/content/globalOverlay.js":67] controller = [xpconnect wrapped nsIController @ 0x5ecd3f8] this = [object ChromeWindow @ 0x58c9968] 4 oncommand(event = [object Event @ 0x5f0c1d8]) ["<unknown>":0] this = [object XULElement @ 0x5d116d8] 5 [native frame] - 0 [native frame] 1 goDoCommand(command = "cmd_openRemote") ["chrome://global/content/globalOverlay.js":67] controller = [xpconnect wrapped nsIController @ 0x5ecd3f8] this = [object ChromeWindow @ 0x58c9968] 2 oncommand(event = [object Event @ 0x5f0c1d8]) ["<unknown>":0] this = [object XULElement @ 0x5d116d8] 3 [native frame] ************************************************************ * Call to xpconnect wrapped JSObject produced this error: * [Exception... "'[JavaScript Error: "window._content has no properties" {file: "chrome://editor/content/ComposerCommands. js" line: 1888}]' when calling method: [nsIControllerCommand::doCommand]" nsresult: "0x80570021 (NS_ERROR_XPC_JAVASCRIP T_ERROR_WITH_DETAILS)" location: "JS frame :: chrome://global/content/globalOverlay.js :: goDoCommand :: line 67" data : yes] ************************************************************ - An error occurred executing the cmd_openRemote command WEBSHELL- = 4 12653.094: ...main1 nsPluginHostImpl::Observe "xpcom-shutdown" ### nsCacheProfilePrefObserver::Observe [topic=xpcom-shutdown data=] It appears i leaked a few webshells :-( and in the end, one of my poor threads died in nspr: PR_ASSERT(thred->md.inCVWaitQueue == PR_FALSE); thred->md.inCVWaitQueue 1 abort() line 44 + 7 bytes PR_Assert(const char * 0x30030078 `string', const char * 0x30030198 `string', int 320) line 512 _PR_MD_WAIT_CV(_MDCVar * 0x002f7764, _MDLock * 0x002f7654, unsigned int 4474380) line 320 + 34 bytes _PR_WaitCondVar(PRThread * 0x002f78a8, PRCondVar * 0x002f76f0, PRLock * 0x002f7638, unsigned int 4474380) line 201 + 23 bytes PR_WaitCondVar(PRCondVar * 0x002f76f0, unsigned int 4474380) line 548 + 23 bytes MemoryFlusher::Run(MemoryFlusher * const 0x002f75e0) line 168 + 20 bytes nsThread::Main(void * 0x002f77a8) line 122 + 26 bytes _PR_NativeRunThread(void * 0x002f78a8) line 433 + 13 bytes _threadstartex(void * 0x002f7b20) line 212 + 13 bytes KERNEL32! 77e96523()
Target Milestone: --- → Future
qa contact -> pmac
QA Contact: tpreston → pmac
.
Assignee: blake → timeless
Looks like this was reported again and fixed in bug 336586.
Status: NEW → RESOLVED
Closed: 17 years ago
Resolution: --- → DUPLICATE
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.