Name: rlT66838 Date: 07/19/99
Using: NT 4.0 SP3, Netsc. Comm. 4.06
Crash occurs always just after proxy settings of the browser are
displayed correctly in the JPI Console.
- The crash has nothing to do with the Control Panel of JPI or with the Start Menu.
- The crash occurs when I download in Netscape Communicator 4.06 a html page containing an applet and being tagged such that JPI 1.2.2 is used as JRE (EMBED tag); the crash does not depend on the referenced applet version (1.1.2 or 1.2.2).
- With older JPIs and also with JPI 1.2.2 using Internet Explorer 4.0 no crash occurs.
- Also on my personal Personal Computer JPI 1.2.2 does not crash.
- When Netscape loads the html page it starts loading JPI and the JPI Console is showing up, then the usual output is displayed in the Console:
****************************** Output on crashing computer
Java(TM) Plug-in: Version 1.2.2.px
Using JRE version 1.2.2
User home directory = C:\WINNT\Profiles\XXXXXXXXXXX
Proxy Configuration: XXXXXXXXXXXXXX
[HERE IS THE CRASH]
****************************** Output on crashing computer
****************************** Output on my computer
Java(TM) Plug-in: Version 1.2.2.px
Using JRE version 1.2.2
User home directory = C:\WINNT\Profiles\Administrator
Proxy Configuration: no proxy
JAR cache enabled.
****************************** Output on my computer
So the crash occurs after proxy settings are displayed and before "JAR cache enabled." should be displayed.
- Before installing JPI 1.2.2 I had installed and running successfully several JPIs, i.e. 1.1.2 and 1.2, only installed one at a time, and last 1.1.2.
- Before installing JPI 1.2.2 I had uninstalled successfully the last JPI, 1.1.2, over the Control Panel of Windows.
- I use the default options from JPI except showing the JPI Console for testing purposes, especially JPI overtakes the browser's proxy settings, which are configures manually and
there IS a proxy; anyway this should not matter as the JPI Console displays the correct
values for proxy settings.
- As you can see from the crash dump generated by "Dr. Watson (32Bit)" the crash happens in a specific thread in the method JVM_GetCPMethodModifiers of jvm.dll
called from the method NPL_SetPluginWindow of netscape.exe/dll, see below:
function: JVM_GetCPMethodModifiers
504ce278 75da jnz JVM_GetCPMethodModifiers+0x3c782 (504ce254)
504ce27a 5e pop esi
504ce27b c3 ret
504ce27c 90 nop
504ce27d 90 nop
504ce27e 90 nop
504ce27f 90 nop
504ce280 8b442404 mov eax,[esp+0x4] ss:014edf33=????????
504ce284 56 push esi
504ce285 33f6 xor esi,esi
FAULT ->504ce287 803800 cmp byte ptr [eax],0x0 ds:00000000=??
504ce28a 7417 jz JVM_GetCPMethodModifiers+0x3c7d1 (504ce2a3)
504ce28c 8d4c2408 lea ecx,[esp+0x8] ss:014edf33=????????
504ce290 51 push ecx
504ce291 e8862ffcff call JVM_GetCPFieldModifiers+0x5 (5049121c)
504ce296 8b54240c mov edx,[esp+0xc] ss:014edf33=????????
504ce29a 83c404 add esp,0x4
504ce29d 46 inc esi
504ce29e 803a00 cmp byte ptr [edx],0x0 ds:00a5f50c=00
504ce2a1 75e9 jnz JVM_GetCPMethodModifiers+0x3c7ba (504ce28c)
504ce2a3 8bc6 mov eax,esi
504ce2a5 5e pop esi
*----> Stack Back Trace <----*
FramePtr ReturnAd Param#1 Param#2 Param#3 Param#4 Function Name
0012f52c 504ad181 00000000 00000003 00954d80 0000000c jvm!JVM_GetCPMethodModifiers (FPO: [1,0,1])
0012f614 005a35ff 00977130 023d2500 00950001 0173000c jvm!JVM_GetCPMethodModifiers (FPO: [EBP 0x01fd0550] [2,1,4])
01fd0550 501491f0 00000002 00954960 00977130 00000001 netscape!NPL_SetPluginWindow
- Another thing is that the installer of JPI 1.2.2 does not update .java/properties file in the JPI user home directory, this is only done through running JPI Control Panel, especially
when there is a properties file from previous JPI 1.1.2 it contains "javaplugin.version=1.1.2"
I hope this information helps you, otherwise please ask again.
This crash is a showstopper for us, as we need to migrate from JPI 1.1.2 to 1.2.2 for
stability reasons of the JVM.
I would be very happy if you could inform me of any topic concerning this crash.
Thanks a lot.
Bruno
Application exception occurred:
App: netscape.dbg (pid=177)
When: 7/15/1999 @ 19:11:56.293
Exception number: c0000005 (access violation)
*----> System Information <----*
Computer Name: XXXXXXXXXXX
User Name: XXXXXXXXXXX
Number of Processors: 1
Processor Type: x86 Family 6 Model 5 Stepping 2
Windows Version: 4.0
Current Build: 1381
Current Type: Uniprocessor Free
Registered Organization: XXXXXXXXXX
Registered Owner: XXXXXXXXX
*----> Task List <----*
0 Idle.exe
2 System.exe
20 smss.exe
24 csrss.exe
34 WINLOGON.exe
40 SERVICES.exe
43 LSASS.exe
66 SPOOLSS.exe
74 amgrsrvc.exe
80 Mcshield.exe
86 VsTskMgr.exe
101 mgasc.exe
114 RPCSS.exe
116 mgactrl.exe
124 PSTORES.exe
110 NDDEAGNT.exe
146 EXPLORER.exe
155 systray.exe
56 mgaqdesk.exe
148 mgahook.exe
162 shstat.exe
165 LOADWC.exe
167 sointgr.exe
169 fpdisp3.exe
175 vs.exe
194 CMD.exe
212 DDHELP.exe
249 CMD.exe
253 CMD.exe
240 4nt.exe
186 CMD.exe
199 4nt.exe
208 soffice.exe
177 netscape.exe
236 DRWTSN32.exe
0 _Total.exe
(00400000 - 0087a000) netscape.dbg
(77f60000 - 77fbc000) dll\ntdll.dbg
(5f400000 - 5f4ec000) mfc42.dbg
(78000000 - 78040000)
(77f00000 - 77f5e000) dll\kernel32.dbg
(77ed0000 - 77efc000) dll\gdi32.dbg
(77e70000 - 77ec1000) dll\user32.dbg
(77dc0000 - 77dfe000) dll\advapi32.dbg
(77e10000 - 77e62000) dll\rpcrt4.dbg
(60000000 - 60018000) pr3240.dbg
(776d0000 - 776d8000) dll\wsock32.dbg
(776b0000 - 776c2000) dll\ws2_32.dbg
(776a0000 - 776a6000) dll\ws2help.dbg
(60080000 - 600d3000) jrt3240.dbg
(77fd0000 - 77ffa000) dll\winmm.dbg
(60020000 - 60060000) js3240.dbg
(60380000 - 60389000) xppref32.dbg
(60390000 - 60390000)
(601e0000 - 601e7000) unicvt32.dbg
(601f0000 - 60207000) jpeg3240.dbg
(77a90000 - 77a9b000) dll\version.dbg
(77c40000 - 77d7c000) dll\shell32.dbg
(00240000 - 002b3000) COMCTL32.dbg
(779c0000 - 779c8000) dll\lz32.dbg
(77d80000 - 77db2000) dll\comdlg32.dbg
(65340000 - 653bc000) oleaut32.dbg
(77b20000 - 77bd2000) dll\ole32.dbg
(60060000 - 60069000) jsd3240.dbg
(6bc00000 - 6bc00000)
(5f810000 - 5f817000) dll\rpcltc1.dbg
(5f600000 - 5f618000) drv\winspool.dbg
(1e810000 - 1e810000)
(60250000 - 60376000) resdll.dbg
(10000000 - 10000000)
(60190000 - 601d2000) uni3200.dbg
(77720000 - 77731000) dll\mpr.dbg
(777f0000 - 777fc000) dll\ntlanman.dbg
(77890000 - 778a3000) dll\netui0.dbg
(77850000 - 7788a000) dll\netui1.dbg
(77800000 - 7783a000) dll\netapi32.dbg
(77840000 - 77849000) dll\NetRap.dbg
(777e0000 - 777ed000) dll\samlib.dbg
(77780000 - 77786000) dll\msidle.dbg
(77660000 - 7766e000) dll\msafd.dbg
(77690000 - 77699000) dll\wshtcpip.dbg
(50140000 - 50140000)
(500f0000 - 500f0000)
(50490000 - 504f9000) jvm.dll
(50000000 - 5000a000) hpi.dll
(50030000 - 5005e000) java.dll
(50010000 - 50025000) zip.dll
(50060000 - 50060000)
(50210000 - 50365000) awt.dll
(76ab0000 - 76ab5000) dll\imm32.dbg
(50370000 - 503c7000) fontmanager.dll
=============
I have looked at the DLL "npjava32.dll" using "Quick View" in the File Explorer
via the DLL's popup menu.
In the "Export Table" the entry with ordinal 0004 and entry point 0000a770
seems to be buggy:
It is displayed as
?Java_sun_awt_EmbeddedFrame_setPeer@@YGXPAUJNIEnv_@@PAV_jobject@@1@Z
I think it should be displayed as
_Java_sun_awt_EmbeddedFrame_setPeer@## where ## is a number
because all other entries starting with "_Java" have the latter format.
Also that the crash occurs in the method netscape!NPL_SetPluginWindow
lets me assume among other thoughts that the JVM looks in npjava32.dll for the entry
_Java_sun_awt_EmbeddedFrame_setPeer
but does not find it because the entry is scrumbled like mentioned:
?Java_sun_awt_EmbeddedFrame_setPeer@@YGXPAUJNIEnv_@@PAV_jobject@@1@Z
resulting in a crash of the browser.
(Review ID: 85686)
======================================================================