Closed Bug 1533072 Opened 5 years ago Closed 5 years ago

[Win] Calling CloseHandle from UpdateService.jsm throws `0xC0000008: An invalid handle was specified.`

Categories

(Toolkit :: Application Update, defect, P3)

defect

Tracking

()

RESOLVED DUPLICATE of bug 1532190

People

(Reporter: mayhemer, Unassigned)

Details

Win64, x64 debug build, running from inside VS IDE (debugger attached).
A clear build of up-to-date m-c, but an older reused profile.
Happens on the parent process at shutdown, 100% repro.

JS stack:
0 closeHandle(handle = [function]) ["resource://gre/modules/UpdateService.jsm":258:2]
1 AUS_observe(subject = null, topic = "quit-application", data = "shutdown") ["resource://gre/modules/UpdateService.jsm":1858:10]
this = [object Object]

JS call point:
https://searchfox.org/mozilla-central/rev/3e0f1d95fcf8832413457e3bec802113bdd1f8e8/toolkit/mozapps/update/UpdateService.jsm#258

C++ stack:
ntdll.dll!KiRaiseUserExceptionDispatcher() Unknown
KernelBase.dll!CloseHandle() Unknown
xul.dll!ffi_call_win64() Unknown

xul.dll!ffi_call(0x000001bd9d2e3160, 0x00007ffee84b1e10, 0x000001bd9d4fadf0, 0x0000005bad3f6028) Line 376 C
xul.dll!js::ctypes::FunctionType::Call(0x000001bd98007000, 1, 0x000001bd980b7158) Line 7003 C++
xul.dll!CallJSNative(0x000001bd98007000, 0x00007ffe94346650, {...}) Line 440 C++
xul.dll!js::InternalCallOrConstruct(0x000001bd98007000, {...}, NO_CONSTRUCT) Line 512 C++
xul.dll!InternalCall(0x000001bd98007000, {...}) Line 587 C++
xul.dll!js::CallFromStack(0x000001bd98007000, {...}) Line 591 C++
xul.dll!Interpret(0x000001bd98007000, {...}) Line 3056 C++
xul.dll!js::RunScript(0x000001bd98007000, {...}) Line 420 C++
xul.dll!js::InternalCallOrConstruct(0x000001bd98007000, {...}, NO_CONSTRUCT) Line 560 C++
xul.dll!InternalCall(0x000001bd98007000, {...}) Line 587 C++
xul.dll!js::Call(0x000001bd98007000, {...}, {...}, {...}, {...}) Line 603 C++
xul.dll!JS_CallFunctionValue(0x000001bd98007000, {...}, {...}, {...}, {...}) Line 2560 C++
xul.dll!nsXPCWrappedJSClass::CallMethod(0x000001bd9ffd9350, 3, 0x00007ffe98059548, 0x0000005bad3fa7a0) Line 993 C++
xul.dll!nsXPCWrappedJS::CallMethod(3, 0x00007ffe98059548, 0x0000005bad3fa7a0) Line 611 C++
xul.dll!PrepareAndDispatch(0x000001bd9cb39f40, 3, 0x0000005bad3fa8c0, 0x0000005bad3fa858, 0x0000005bad3fa870) Line 181 C++
xul.dll!SharedStub() Unknown
xul.dll!nsObserverList::NotifyObservers(0x0000000000000000, 0x00007ffe97ff3b02, 0x00007ffe986f945c) Line 66 C++
xul.dll!nsObserverService::NotifyObservers(0x0000000000000000, 0x00007ffe97ff3b02, 0x00007ffe986f945c) Line 291 C++
xul.dll!nsAppStartup::Quit(1) Line 443 C++
xul.dll!nsAppStartup::ExitLastWindowClosingSurvivalArea() Line 504 C++
xul.dll!nsAppStartup::Observe(0x0000000000000000, 0x00007ffe98dae0c5, 0x0000000000000000) Line 671 C++
xul.dll!nsObserverList::NotifyObservers(0x0000000000000000, 0x00007ffe98dae0c5, 0x0000000000000000) Line 66 C++
xul.dll!nsObserverService::NotifyObservers(0x0000000000000000, 0x00007ffe98dae0c5, 0x0000000000000000) Line 291 C++
xul.dll!nsXULWindow::Destroy() Line 531 C++
xul.dll!nsWebShellWindow::Destroy() Line 731 C++
xul.dll!nsWebShellWindow::RequestWindowClose(0x000001bd9623f800) Line 327 C++
xul.dll!nsWebShellWindow::WidgetListenerDelegate::RequestWindowClose(0x000001bd9623f800) Line 759 C++
xul.dll!nsWindow::ProcessMessage(16, 0, 0, 0x0000005bad3fcb78) Line 5247 C++
xul.dll!nsWindow::WindowProcInternal(0x0000000000050b6a, 16, 0, 0) Line 4750 C++
xul.dll!CallWindowProcCrashProtected(0x00007ffe911c8d50, 0x0000000000050b6a, 16, 0, 0) Line 27 C++
xul.dll!nsWindow::WindowProc(0x0000000000050b6a, 16, 0, 0) Line 4703 C++
user32.dll!UserCallWinProcCheckWow() Unknown
user32.dll!DispatchClientMessage() Unknown
user32.dll!__fnDWORD() Unknown
ntdll.dll!KiUserCallbackDispatcherContinue() Unknown
win32u.dll!NtUserMessageCall() Unknown
user32.dll!RealDefWindowProcWorker() Unknown
user32.dll!RealDefWindowProcW() Unknown
uxtheme.dll!DoMsgDefault() Line 550 C++
uxtheme.dll!OnDwpSysCommand(0x000001bd95fc0bf0, 0x0000005bad3fd1d0) Line 7566 C++
uxtheme.dll!_ThemeDefWindowProc(0x0000000000050b6a, 274, 61536, 0, 1) Line 1067 C++
uxtheme.dll!ThemeDefWindowProcW(, , , ) Line 1109 C++
user32.dll!DefWindowProcW() Unknown
xul.dll!mozilla::widget::WinUtils::NonClientDpiScalingDefWindowProcW(0x0000000000050b6a, 274, 61536, 0) Line 472 C++
user32.dll!UserCallWinProcCheckWow() Unknown
user32.dll!CallWindowProcW() Unknown
xul.dll!nsWindow::WindowProcInternal(0x0000000000050b6a, 274, 61536, 0) Line 4754 C++
xul.dll!CallWindowProcCrashProtected(0x00007ffe911c8d50, 0x0000000000050b6a, 274, 61536, 0) Line 27 C++
xul.dll!nsWindow::WindowProc(0x0000000000050b6a, 274, 61536, 0) Line 4703 C++
user32.dll!UserCallWinProcCheckWow() Unknown
user32.dll!DispatchClientMessage() Unknown
user32.dll!__fnDWORD() Unknown
ntdll.dll!KiUserCallbackDispatcherContinue() Unknown
win32u.dll!NtUserPeekMessage() Unknown
user32.dll!_PeekMessage() Unknown
user32.dll!PeekMessageW() Unknown
msctf.dll!CThreadInputMgr::PeekMessageW() Unknown
xul.dll!mozilla::widget::WinUtils::PeekMessage(0x0000005bad3fdd70, 0x0000000000000000, 0, 0, 1) Line 690 C++
xul.dll!nsAppShell::ProcessNextNativeEvent(true) Line 509 C++
xul.dll!nsBaseAppShell::DoProcessNextNativeEvent(true) Line 120 C++
xul.dll!nsBaseAppShell::OnProcessNextEvent(0x000001bd9622b800, false) Line 259 C++
xul.dll!nsThread::ProcessNextEvent(true, 0x0000005bad3fe70f) Line 1078 C++
xul.dll!NS_ProcessNextEvent(0x000001bd9622b800, true) Line 482 C++
xul.dll!mozilla::ipc::MessagePump::Run(0x000001bd9625c030) Line 110 C++
xul.dll!MessageLoop::RunInternal() Line 315 C++
xul.dll!MessageLoop::RunHandler() Line 309 C++
xul.dll!MessageLoop::Run() Line 291 C++
xul.dll!nsBaseAppShell::Run() Line 139 C++
xul.dll!nsAppShell::Run() Line 411 C++
xul.dll!nsAppStartup::Run() Line 271 C++
xul.dll!XREMain::XRE_mainRun() Line 4735 C++
xul.dll!XREMain::XRE_main(4, 0x000001bd962020a0, {...}) Line 4873 C++
xul.dll!XRE_main(4, 0x000001bd962020a0, {...}) Line 4957 C++
xul.dll!mozilla::BootstrapImpl::XRE_main(4, 0x000001bd962020a0, {...}) Line 39 C++
firefox.exe!do_main(4, 0x000001bd962020a0, 0x000001bd95cd6c40) Line 214 C++
firefox.exe!NS_internal_main(4, 0x000001bd962020a0, 0x000001bd95cd6c40) Line 293 C++
firefox.exe!wmain(4, 0x000001bd95cc4b00) Line 131 C++
firefox.exe!__scrt_common_main_seh() Line 288 C++
kernel32.dll!BaseThreadInitThunk() Unknown
ntdll.dll!RtlUserThreadStart() Unknown

The handle value is not null, it looks like an already closed handle.

Priority: -- → P3

Duping to other bug since it has a patch attached.

Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.