JDK-6213554 : npjpi150_01.dll hangs when IE exit
  • Type: Bug
  • Component: deploy
  • Sub-Component: plugin
  • Affected Version: 5.0
  • Priority: P3
  • Status: Closed
  • Resolution: Duplicate
  • OS: windows_xp
  • CPU: x86
  • Submitted: 2005-01-03
  • Updated: 2010-04-02
  • Resolved: 2005-01-07
Related Reports
Duplicate :  
Description
FULL PRODUCT VERSION :
java version "1.5.0_01"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_01-b08)
Java HotSpot(TM) Client VM (build 1.5.0_01-b08, mixed mode, sharing)

ADDITIONAL OS VERSION INFORMATION :
Microsoft Windows XP [Version 5.1.2600]

A DESCRIPTION OF THE PROBLEM :
when exiting IE, npjpi150_01.dll may hang causing iexplore.exe process hanging in memory forever.

see Error Message(s) section for the stack tracing.

according to the callstack, npjpi150_01.dll calls CoUninitialize from DllMain. this is not correct according to MSDN:

<Quote>
Calling imported functions other than those located in Kernel32.dll may result in problems that are difficult to diagnose. For example, calling User, Shell, and COM functions can cause access violation errors, because some functions in their DLLs call LoadLibrary to load other system components. Conversely, calling those functions during termination can cause access violation errors because the corresponding component may already have been unloaded or uninitialized.
</Quote>


ERROR MESSAGES/STACK TRACES THAT OCCUR :
there is only one thread when it hangs. the hanging stack is like this:

0:000> k 200
ChildEBP RetAddr
0013ee74 7c90e9ab ntdll!KiFastSystemCallRet
0013ee78 7c8094f2 ntdll!ZwWaitForMultipleObjects+0xc
0013ef14 77d4bbfe kernel32!WaitForMultipleObjectsEx+0x12c
0013ef70 77539f90 USER32!RealMsgWaitForMultipleObjectsEx+0x13e
0013ef98 7753a0b7 ole32!CCliModalLoop::BlockFn+0x80
0013efc0 77600aa3 ole32!ModalLoop+0x5b
0013efdc 776004b7 ole32!ThreadSendReceive+0xa0
0013eff8 7760039b ole32!CRpcChannelBuffer::SwitchAptAndDispatchCall+0x13d
0013f0d8 7753a165 ole32!CRpcChannelBuffer::SendReceive2+0xb9
0013f0f4 7753a10d ole32!CCliModalLoop::SendReceive+0x1e
0013f160 77538170 ole32!CAptRpcChnl::SendReceive+0x6f
0013f1b4 77ef3db5 ole32!CCtxComChnl::SendReceive+0x113
0013f1d0 77ef3eac RPCRT4!NdrProxySendReceive+0x43
0013f5ac 77ef3e42 RPCRT4!NdrClientCall2+0x1fa
0013f5cc 77e89aa4 RPCRT4!ObjectStublessClient+0x8b
0013f5dc 7753916b RPCRT4!ObjectStubless+0xf
0013f5f4 7753910c ole32!RemoteReleaseRifRefHelper+0x84
0013f61c 775373f4 ole32!RemoteReleaseRifRef+0x74
0013f674 775371ed ole32!CStdMarshal::DisconnectCliIPIDs+0x200
0013f69c 77551310 ole32!CStdMarshal::Disconnect+0x178
0013f6b0 775512f1 ole32!DisconnectSwitch+0x16
0013f6c8 775636ae ole32!CStdMarshal::DisconnectAndRelease+0x44
0013f878 77528fb9 ole32!COIDTable::ThreadCleanup+0x80
0013f8a4 77528f0c ole32!FinishShutdown+0x69
0013f8c0 774f45aa ole32!ApartmentUninitialize+0x7e
0013f8d8 774f4212 ole32!wCoUninitialize+0x41
0013f8f4 6d5918e2 ole32!CoUninitialize+0x5b
WARNING: Stack unwind information not available. Following frames may be wrong.
0013fd24 6d596111 npjpi150_01!NP_Shutdown+0x668
0013fd44 7c9011a7 npjpi150_01!NSUnregisterSelf+0x1c1
0013fd64 7c923f31 ntdll!LdrpCallInitRoutine+0x14
0013fde8 7c81ca3e ntdll!LdrShutdownProcess+0x14f
0013fedc 7c81cab6 kernel32!_ExitProcess+0x42
0013fef0 777e6c0d kernel32!ExitProcess+0x14
0013ff10 00402372 SHDOCVW!IEWinMain+0x154
0013ff60 00402444 iexplore!WinMainT+0x2de
0013ffc0 7c816d4f iexplore!_ModuleEntry+0x99
0013fff0 00000000 kernel32!BaseProcessStart+0x23


REPRODUCIBILITY :
This bug can be reproduced often.
###@###.### 2005-1-03 23:40:24 GMT

Comments
EVALUATION This is a duplicate of #5080386. ###@###.### 2005-1-07 00:22:53 GMT
07-01-2005