-
Bug
-
Resolution: Fixed
-
P2
-
5.0u11, 6
-
b02
-
generic, x86
-
solaris_nevada, solaris_10
-
Verified
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-2149757 | 5.0u15 | Poonam Bajaj Parhar | P2 | Resolved | Fixed | b02 |
Test case:
http://leadbelly.lanl.gov/lanl_ep_data/cgi-bin/ep_plot_choose_3.cgi/19980311/LANL_GEO_LoE_00-24/1/2
Steps to reproduce:
Keep clicking the left and right button on the up-right corner, the browser will hang on Solaris snv54, sometimes crash.
This bug is related to the mozilla community bug: https://bugzilla.mozilla.org/show_bug.cgi?id=323175. The reporter said that it can also be reproduced on Windows and Linux.
After some investigation, the hang is caused by an infinite loop in the code block of JavaVM5.cpp:
"
while (spontPipeClean && (pluginInstance->GetStatus()) < APPLET_START) {
/* Wait for the applet notify us that APPLET IS STARTED
while waiting, we need to poll the worker queue since
there maybe a request from java side such as cookie/proxy
request.
*/
ProcessWorkQueue();
}
"
And also the error message in the Java console:
"
Exception in thread "Thread-10" java.lang.NullPointerException
at sun.plugin.util.AnimationPanel.createTranslucentImage(AnimationPanel.java:232)
at sun.plugin.util.AnimationPanel.createGradientShapeImage(AnimationPanel.java:244)
at sun.plugin.util.AnimationPanel.initBackground(AnimationPanel.java:320)
at sun.plugin.util.AnimationPanel.preloadResources(AnimationPanel.java:509)
at sun.plugin.util.AnimationPanel.doPaint(AnimationPanel.java:565)
at sun.plugin.util.AnimationPanel.run(AnimationPanel.java:1061)
at java.lang.Thread.run(Thread.java:619)
"
The return value of pluginInstance->GetStatus() is always 0 which is APPLET_DISPOSE. That's to say, the applet isn't started at all.
And also the stack trace when Firefox hangs:
=>[1] __pollsys(0x80450b8, 0x1, 0x8045088, 0x0), at 0xd1dc88f5
[2] _pollsys(0x80450b8, 0x1, 0x8045088, 0x0), at 0xd1dbbdf6
[3] _poll(0x80450b8, 0x1, 0x0), at 0xd1d7f7b2
[4] JavaVM5::ProcessWorkQueue(0x8d5bd80), at 0xcb4b37e4
[5] JavaVM5::GetJavaObjectForInstance(0x8d5bd80, 0x1), at 0xcb4b4623
[6] JavaPluginFactory5::GetJavaObjectForInstance(0x8d5a7a0, 0x1), at 0xcb4afdef
[7] JavaPluginInstance5::GetJavaObject(0x8d42578, 0x80451b8), at 0xcb4b1ed9
[8] CNSAdapter_JavaPlugin::GetJavaObject(0x8c848a0, 0x80451b8), at 0xcb50fc02
[9] nsHTMLAppletElementSH::GetPluginJSObject(0x8c302d0, 0x8c2ecb8, 0x8b0df68, 0x8c848a0, 0x8045220, 0x8045224), at 0xcd73d5a2
[10] nsHTMLExternalObjSH::PostCreate(0x8c302d0, 0x8c31038, 0x8c2ecb8, 0x8b0df68), at 0xcd73ccde
[11] XPCWrappedNative::GetNewOrUsed(0x80453e8, 0x8d3ca48, 0x8c43100, 0x819d640, 0x0, 0x80453a8), at 0xce3ad97e
[12] XPCConvert::NativeInterface2JSObject(0x80453e8, 0x80454bc, 0x8d3ca48, 0xcda5f968, 0x8b98728, 0x0, 0x0, 0x8045470), at 0xce396231
[13] nsXPConnect::WrapNative(0x81482d0, 0x8c2ecb8, 0x8b98728, 0x8d3ca48, 0xcda5f968, 0x80454bc), at 0xce384478
[14] nsDOMClassInfo::WrapNative(0x8c2ecb8, 0x8b97d60, 0x8d3ca48, 0xcda5f968, 0x8045718, 0x8045508), at 0xcd726a85
[15] nsHTMLDocumentSH::GetProperty(0x8535300, 0x8c029b8, 0x8c2ecb8, 0x8b97d60, 0x8bca09c, 0x8045718, 0x8045568), at 0xcd73a75e
[16] XPC_WN_Helper_GetProperty(0x8c2ecb8, 0x8b97d60, 0x8bca09c, 0x8045718), at 0xce3b7513
[17] js_GetProperty(0x8c2ecb8, 0x8b97d60, 0x8c35188, 0x8045718), at 0xd1944157
[18] js_Interpret(0x8c2ecb8, 0x8cc923b, 0x8045838), at 0xd192ca56
[19] js_Invoke(0x8c2ecb8, 0x1, 0x2), at 0xd192635c
[20] nsXPCWrappedJSClass::CallMethod(0x8631cd0, 0x8c9d330, 0x3, 0x835ee78, 0x8045b00), at 0xce3abf11
[21] nsXPCWrappedJS::CallMethod(0x8c9d330, 0x3, 0x835ee78, 0x8045b00), at 0xce3a613f
[22] PrepareAndDispatch(0x8c9d330, 0x3, 0x8045be0), at 0xd1cb4cc0
[23] nsXPTCStubBase::Stub3(0x8c9d330, 0x8bbcee0), at 0xd1cb4dc0
[24] nsEventListenerManager::HandleEventSubType(0x8c912c8, 0x8c238b0, 0x8c9d330, 0x8bbcee0, 0x8be8a50, 0x1, 0x4), at 0xcd593f08
[25] nsEventListenerManager::HandleEvent(0x8c912c8, 0x8c36670, 0x8046668, 0x80461c0, 0x8be8a50, 0x4, 0x8046490), at 0xcd5943c3
[26] nsGenericElement::HandleDOMEvent(0x8cb4500, 0x8c36670, 0x8046668, 0x80461c0, 0x4, 0x8046490), at 0xcd54c1c8
[27] nsGenericElement::HandleDOMEvent(0x8cb4578, 0x8c36670, 0x8046668, 0x80461c0, 0x4, 0x8046490), at 0xcd54c066
[28] nsGenericElement::HandleDOMEvent(0x8c28648, 0x8c36670, 0x8046668, 0x80461c0, 0x7, 0x8046490), at 0xcd54c066
[29] nsHTMLImageElement::HandleDOMEvent(0x8c28648, 0x8c36670, 0x8046668, 0x0, 0x1, 0x8046490), at 0xcd5fb5b1
[30] PresShell::HandleEventInternal(0x8c35ca0, 0x8046668, 0x8d5d090, 0x1, 0x8046490), at 0xcd338b3b
[31] PresShell::HandleEvent(0x8c35ca0, 0x8d5d090, 0x8046668, 0x8046490, 0x0, 0x8046494), at 0xcd3386ef
[32] nsViewManager::HandleEvent(0x8c370f8, 0x8c72410, 0x8046668, 0x0), at 0xcd6e76b2
[33] nsViewManager::DispatchEvent(0x8c370f8, 0x8046668, 0x80465bc), at 0xcd6e68da
[34] HandleEvent(0x8046668), at 0xcd6dc946
[35] nsCommonWidget::DispatchEvent(0x8c72938, 0x8046668, 0x80466c0), at 0xce2c539e
[36] nsWindow::OnMotionNotifyEvent(0x8c72938, 0x8321138, 0x83a7140), at 0xce2ba110
[37] motion_notify_event_cb(0x8321138, 0x83a7140, 0x0), at 0xce2bf851
[38] _gtk_marshal_BOOLEAN__BOXED(0x841f0e0, 0x80467b0, 0x2, 0x804686c, 0x80467cc, 0x0), at 0xd16bcca8
[39] g_closure_invoke(0x841f0e0, 0x80467b0, 0x2, 0x804686c, 0x80467cc), at 0xd13be073
[40] signal_emit_unlocked_R(0x815e688, 0x0, 0x8321138, 0x80469ec, 0x804686c), at 0xd13d1cce
[41] g_signal_emit_valist(0x8321138, 0x1f, 0x0, 0x8046ae0), at 0xd13d0d7e
[42] g_signal_emit(0x8321138, 0x1f, 0x0, 0x83a7140, 0x8046b04), at 0xd13d1175
[43] gtk_widget_event_internal(0x8321138, 0x83a7140), at 0xd17becbf
[44] gtk_widget_event(0x8321138, 0x83a7140), at 0xd17be951
[45] gtk_propagate_event(0x8321138, 0x83a7140), at 0xd16bb8f8
[46] gtk_main_do_event(0x83a7140, 0x0), at 0xd16ba98d
[47] gdk_event_dispatch(0x80cc2b8, 0x0, 0x0), at 0xd1504f7a
[48] g_main_dispatch(0x80cce08), at 0xd1433615
[49] g_main_context_dispatch(0x80cce08), at 0xd1434705
[50] g_main_context_iterate(0x80cce08, 0x1, 0x1, 0x8169a58), at 0xd1434b22
[51] g_main_loop_run(0x831e9f8), at 0xd1435124
[52] gtk_main(0x8046ff8, 0x8087430, 0x8160098, 0x8046d48, 0xce1d25ab, 0x81985d8), at 0xd16ba2ba
[53] nsAppShell::Run(0x81985d8), at 0xce2c3928
[54] nsAppStartup::Run(0x8160098), at 0xce1d25ab
[55] XRE_main(0x5, 0x8047068, 0x8087408), at 0x8061a2c
[56] main(0x5, 0x8047068, 0x8047080), at 0x805a521
http://leadbelly.lanl.gov/lanl_ep_data/cgi-bin/ep_plot_choose_3.cgi/19980311/LANL_GEO_LoE_00-24/1/2
Steps to reproduce:
Keep clicking the left and right button on the up-right corner, the browser will hang on Solaris snv54, sometimes crash.
This bug is related to the mozilla community bug: https://bugzilla.mozilla.org/show_bug.cgi?id=323175. The reporter said that it can also be reproduced on Windows and Linux.
After some investigation, the hang is caused by an infinite loop in the code block of JavaVM5.cpp:
"
while (spontPipeClean && (pluginInstance->GetStatus()) < APPLET_START) {
/* Wait for the applet notify us that APPLET IS STARTED
while waiting, we need to poll the worker queue since
there maybe a request from java side such as cookie/proxy
request.
*/
ProcessWorkQueue();
}
"
And also the error message in the Java console:
"
Exception in thread "Thread-10" java.lang.NullPointerException
at sun.plugin.util.AnimationPanel.createTranslucentImage(AnimationPanel.java:232)
at sun.plugin.util.AnimationPanel.createGradientShapeImage(AnimationPanel.java:244)
at sun.plugin.util.AnimationPanel.initBackground(AnimationPanel.java:320)
at sun.plugin.util.AnimationPanel.preloadResources(AnimationPanel.java:509)
at sun.plugin.util.AnimationPanel.doPaint(AnimationPanel.java:565)
at sun.plugin.util.AnimationPanel.run(AnimationPanel.java:1061)
at java.lang.Thread.run(Thread.java:619)
"
The return value of pluginInstance->GetStatus() is always 0 which is APPLET_DISPOSE. That's to say, the applet isn't started at all.
And also the stack trace when Firefox hangs:
=>[1] __pollsys(0x80450b8, 0x1, 0x8045088, 0x0), at 0xd1dc88f5
[2] _pollsys(0x80450b8, 0x1, 0x8045088, 0x0), at 0xd1dbbdf6
[3] _poll(0x80450b8, 0x1, 0x0), at 0xd1d7f7b2
[4] JavaVM5::ProcessWorkQueue(0x8d5bd80), at 0xcb4b37e4
[5] JavaVM5::GetJavaObjectForInstance(0x8d5bd80, 0x1), at 0xcb4b4623
[6] JavaPluginFactory5::GetJavaObjectForInstance(0x8d5a7a0, 0x1), at 0xcb4afdef
[7] JavaPluginInstance5::GetJavaObject(0x8d42578, 0x80451b8), at 0xcb4b1ed9
[8] CNSAdapter_JavaPlugin::GetJavaObject(0x8c848a0, 0x80451b8), at 0xcb50fc02
[9] nsHTMLAppletElementSH::GetPluginJSObject(0x8c302d0, 0x8c2ecb8, 0x8b0df68, 0x8c848a0, 0x8045220, 0x8045224), at 0xcd73d5a2
[10] nsHTMLExternalObjSH::PostCreate(0x8c302d0, 0x8c31038, 0x8c2ecb8, 0x8b0df68), at 0xcd73ccde
[11] XPCWrappedNative::GetNewOrUsed(0x80453e8, 0x8d3ca48, 0x8c43100, 0x819d640, 0x0, 0x80453a8), at 0xce3ad97e
[12] XPCConvert::NativeInterface2JSObject(0x80453e8, 0x80454bc, 0x8d3ca48, 0xcda5f968, 0x8b98728, 0x0, 0x0, 0x8045470), at 0xce396231
[13] nsXPConnect::WrapNative(0x81482d0, 0x8c2ecb8, 0x8b98728, 0x8d3ca48, 0xcda5f968, 0x80454bc), at 0xce384478
[14] nsDOMClassInfo::WrapNative(0x8c2ecb8, 0x8b97d60, 0x8d3ca48, 0xcda5f968, 0x8045718, 0x8045508), at 0xcd726a85
[15] nsHTMLDocumentSH::GetProperty(0x8535300, 0x8c029b8, 0x8c2ecb8, 0x8b97d60, 0x8bca09c, 0x8045718, 0x8045568), at 0xcd73a75e
[16] XPC_WN_Helper_GetProperty(0x8c2ecb8, 0x8b97d60, 0x8bca09c, 0x8045718), at 0xce3b7513
[17] js_GetProperty(0x8c2ecb8, 0x8b97d60, 0x8c35188, 0x8045718), at 0xd1944157
[18] js_Interpret(0x8c2ecb8, 0x8cc923b, 0x8045838), at 0xd192ca56
[19] js_Invoke(0x8c2ecb8, 0x1, 0x2), at 0xd192635c
[20] nsXPCWrappedJSClass::CallMethod(0x8631cd0, 0x8c9d330, 0x3, 0x835ee78, 0x8045b00), at 0xce3abf11
[21] nsXPCWrappedJS::CallMethod(0x8c9d330, 0x3, 0x835ee78, 0x8045b00), at 0xce3a613f
[22] PrepareAndDispatch(0x8c9d330, 0x3, 0x8045be0), at 0xd1cb4cc0
[23] nsXPTCStubBase::Stub3(0x8c9d330, 0x8bbcee0), at 0xd1cb4dc0
[24] nsEventListenerManager::HandleEventSubType(0x8c912c8, 0x8c238b0, 0x8c9d330, 0x8bbcee0, 0x8be8a50, 0x1, 0x4), at 0xcd593f08
[25] nsEventListenerManager::HandleEvent(0x8c912c8, 0x8c36670, 0x8046668, 0x80461c0, 0x8be8a50, 0x4, 0x8046490), at 0xcd5943c3
[26] nsGenericElement::HandleDOMEvent(0x8cb4500, 0x8c36670, 0x8046668, 0x80461c0, 0x4, 0x8046490), at 0xcd54c1c8
[27] nsGenericElement::HandleDOMEvent(0x8cb4578, 0x8c36670, 0x8046668, 0x80461c0, 0x4, 0x8046490), at 0xcd54c066
[28] nsGenericElement::HandleDOMEvent(0x8c28648, 0x8c36670, 0x8046668, 0x80461c0, 0x7, 0x8046490), at 0xcd54c066
[29] nsHTMLImageElement::HandleDOMEvent(0x8c28648, 0x8c36670, 0x8046668, 0x0, 0x1, 0x8046490), at 0xcd5fb5b1
[30] PresShell::HandleEventInternal(0x8c35ca0, 0x8046668, 0x8d5d090, 0x1, 0x8046490), at 0xcd338b3b
[31] PresShell::HandleEvent(0x8c35ca0, 0x8d5d090, 0x8046668, 0x8046490, 0x0, 0x8046494), at 0xcd3386ef
[32] nsViewManager::HandleEvent(0x8c370f8, 0x8c72410, 0x8046668, 0x0), at 0xcd6e76b2
[33] nsViewManager::DispatchEvent(0x8c370f8, 0x8046668, 0x80465bc), at 0xcd6e68da
[34] HandleEvent(0x8046668), at 0xcd6dc946
[35] nsCommonWidget::DispatchEvent(0x8c72938, 0x8046668, 0x80466c0), at 0xce2c539e
[36] nsWindow::OnMotionNotifyEvent(0x8c72938, 0x8321138, 0x83a7140), at 0xce2ba110
[37] motion_notify_event_cb(0x8321138, 0x83a7140, 0x0), at 0xce2bf851
[38] _gtk_marshal_BOOLEAN__BOXED(0x841f0e0, 0x80467b0, 0x2, 0x804686c, 0x80467cc, 0x0), at 0xd16bcca8
[39] g_closure_invoke(0x841f0e0, 0x80467b0, 0x2, 0x804686c, 0x80467cc), at 0xd13be073
[40] signal_emit_unlocked_R(0x815e688, 0x0, 0x8321138, 0x80469ec, 0x804686c), at 0xd13d1cce
[41] g_signal_emit_valist(0x8321138, 0x1f, 0x0, 0x8046ae0), at 0xd13d0d7e
[42] g_signal_emit(0x8321138, 0x1f, 0x0, 0x83a7140, 0x8046b04), at 0xd13d1175
[43] gtk_widget_event_internal(0x8321138, 0x83a7140), at 0xd17becbf
[44] gtk_widget_event(0x8321138, 0x83a7140), at 0xd17be951
[45] gtk_propagate_event(0x8321138, 0x83a7140), at 0xd16bb8f8
[46] gtk_main_do_event(0x83a7140, 0x0), at 0xd16ba98d
[47] gdk_event_dispatch(0x80cc2b8, 0x0, 0x0), at 0xd1504f7a
[48] g_main_dispatch(0x80cce08), at 0xd1433615
[49] g_main_context_dispatch(0x80cce08), at 0xd1434705
[50] g_main_context_iterate(0x80cce08, 0x1, 0x1, 0x8169a58), at 0xd1434b22
[51] g_main_loop_run(0x831e9f8), at 0xd1435124
[52] gtk_main(0x8046ff8, 0x8087430, 0x8160098, 0x8046d48, 0xce1d25ab, 0x81985d8), at 0xd16ba2ba
[53] nsAppShell::Run(0x81985d8), at 0xce2c3928
[54] nsAppStartup::Run(0x8160098), at 0xce1d25ab
[55] XRE_main(0x5, 0x8047068, 0x8087408), at 0x8061a2c
[56] main(0x5, 0x8047068, 0x8047080), at 0x805a521
- backported by
-
JDK-2149757 Java applets load repeatedly hangs Firefox
- Resolved