Bug 38478 - [GTK] browser using webkit crashes on java pages with openjdk6 6.b18_1.8-1
Summary: [GTK] browser using webkit crashes on java pages with openjdk6 6.b18_1.8-1
Status: RESOLVED CONFIGURATION CHANGED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Java (show other bugs)
Version: 528+ (Nightly build)
Hardware: PC Linux
: P2 Major
Assignee: Nobody
URL:
Keywords: Gtk, InRadar
Depends on:
Blocks:
 
Reported: 2010-05-03 11:54 PDT by Skunk
Modified: 2022-06-28 03:49 PDT (History)
5 users (show)

See Also:


Attachments
backtrace of epiphany crashing on site with java (7.31 KB, text/plain)
2010-05-03 11:54 PDT, Skunk
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Skunk 2010-05-03 11:54:09 PDT
Created attachment 54948 [details]
backtrace of epiphany crashing on site with java

I have installed libwebkit 1.2.0-1 and I had with three browsers using webkit (epiphany, arora, surf) the same problem: Whenever I entered a site using java the browser crashed. I have appended the console-output (and I have tried to compile e.g. epiphany with CFLAGS -g but could not get more detailed backtrace). Now I downgraded to openjdk6 6.b17_1.7.3-1 and everything seems to work fine again. Other browsers (e.g. conkeror, firefox, midori, ...) work fine. See http://bugs.archlinux.org/task/19273 for this error and fix.

Steps to reproduce:
install openjdk6 6.b18_1.8-1
install epiphany
browse e.g. www.klack.de
browser crashes

Im running Arch linux
uname -a:
Linux deskskunk 2.6.33-ARCH #1 SMP PREEMPT Mon Apr 26 20:00:20 CEST 2010 i686 AMD Athlon(tm) 64 X2 Dual Core Processor 6000+ AuthenticAMD GNU/Linux
Comment 1 Sven Arvidsson 2010-07-16 06:34:06 PDT
This bug should be reassigned to the Gtk+ component. OpenJDK does work in Chrome, only browsers based on WebkitGTK+ are affected.

FWIW, this is terminal output from running an applet in Epiphany:

java version "1.6.0_20"
OpenJDK Runtime Environment (IcedTea6 1.9pre) (6b20~pre1-2)
OpenJDK Server VM (build 17.0-b16, mixed mode)
/build/buildd-openjdk-6_6b20~pre1-2-i386-esIBaU/openjdk-6-6b20~pre1/build/../plugin/icedteanp/IcedTeaNPPlugin.cc:622: thread 0x873a750: Error: Unknown plugin value requested.
java.lang.NullPointerException
	at sun.applet.PluginAppletViewer.handleMessage(PluginAppletViewer.java:649)
	at sun.applet.PluginStreamHandler.handleMessage(PluginStreamHandler.java:270)
	at sun.applet.PluginMessageHandlerWorker.run(PluginMessageHandlerWorker.java:82)
java.lang.RuntimeException: Failed to handle message: width 170 height 150 for instance 1
	at sun.applet.PluginAppletViewer.handleMessage(PluginAppletViewer.java:660)
	at sun.applet.PluginStreamHandler.handleMessage(PluginStreamHandler.java:270)
	at sun.applet.PluginMessageHandlerWorker.run(PluginMessageHandlerWorker.java:82)
Caused by: java.lang.NullPointerException
	at sun.applet.PluginAppletViewer.handleMessage(PluginAppletViewer.java:649)
	... 2 more

The browser UI freezes and pegs the CPU at this point.
Comment 2 Gustavo Noronha (kov) 2010-09-30 06:48:49 PDT
WebKitGTK+ also crashes for me in the following URL:

ttps://www2.bancobrasil.com.br/aapf/login.jsp?aapf.IDH=sim&perfil=1

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fffd9998710 (LWP 9836)]
operator< (__first=..., __holeIndex=0, __value=<value optimized out>, 
    __topIndex=<value optimized out>) at ../WebCore/platform/Timer.cpp:108
108	../WebCore/platform/Timer.cpp: No such file or directory.
	in ../WebCore/platform/Timer.cpp
(gdb) bt
#0  operator< (__first=..., __holeIndex=0, __value=<value optimized out>, 
    __topIndex=<value optimized out>) at ../WebCore/platform/Timer.cpp:108
#1  std::__push_heap<WebCore::TimerHeapIterator, int, WebCore::TimerHeapElement> (__first=..., 
    __holeIndex=0, __value=<value optimized out>, __topIndex=<value optimized out>)
    at /usr/include/c++/4.4/bits/stl_heap.h:134
#2  0x00007ffff4ed4e87 in push_heap<WebCore::TimerHeapIterator> (this=<value optimized out>)
    at /usr/include/c++/4.4/bits/stl_heap.h:169
#3  WebCore::TimerBase::heapDecreaseKey (this=<value optimized out>)
    at ../WebCore/platform/Timer.cpp:228
#4  0x00007ffff4ed5121 in heapPop (this=0x7ffff7f0d3c8, newTime=<value optimized out>)
    at ../WebCore/platform/Timer.cpp:268
#5  heapDelete (this=0x7ffff7f0d3c8, newTime=<value optimized out>)
    at ../WebCore/platform/Timer.cpp:235
#6  WebCore::TimerBase::setNextFireTime (this=0x7ffff7f0d3c8, newTime=<value optimized out>)
    at ../WebCore/platform/Timer.cpp:298
#7  0x00007ffff4e5fa98 in WebCore::DOMTimer::~DOMTimer (this=0x7ffff7f0d3c8, 
    __in_chrg=<value optimized out>) at ../WebCore/page/DOMTimer.cpp:83
#8  0x00007ffff54e6908 in WebCore::jsDOMWindowPrototypeFunctionClearTimeout (
    exec=0x7fffdad720b0, thisValue=..., args=...) at DerivedSources/JSDOMWindow.cpp:8624
#9  0x00007fffe46f01b4 in ?? ()
#10 0x00007fffdad72068 in ?? ()
#11 0x0000000000000001 in ?? ()
#12 0x0000000000000000 in ?? ()
(gdb) 30-Sep-2010 10:46:11 java.util.prefs.FileSystemPreferences syncWorld
WARNING: Couldn't flush system prefs: java.util.prefs.BackingStoreException: /etc/.java/.systemPrefs/390EB7D8 create failed.

Seems to be a problem with the timer being used after it got destroyed?


(gdb) bt full
#0  operator< (__first=..., __holeIndex=0, __value=<value optimized out>, 
    __topIndex=<value optimized out>) at ../WebCore/platform/Timer.cpp:108
        aFireTime = 1285854341.9096789
        bFireTime = <value optimized out>
#1  std::__push_heap<WebCore::TimerHeapIterator, int, WebCore::TimerHeapElement> (__first=..., 
    __holeIndex=0, __value=<value optimized out>, __topIndex=<value optimized out>)
    at /usr/include/c++/4.4/bits/stl_heap.h:134
No locals.
#2  0x00007ffff4ed4e87 in push_heap<WebCore::TimerHeapIterator> (this=<value optimized out>)
    at /usr/include/c++/4.4/bits/stl_heap.h:169
No locals.
#3  WebCore::TimerBase::heapDecreaseKey (this=<value optimized out>)
    at ../WebCore/platform/Timer.cpp:228
No locals.
#4  0x00007ffff4ed5121 in heapPop (this=0x7ffff7f0d3c8, newTime=<value optimized out>)
    at ../WebCore/platform/Timer.cpp:268
No locals.
#5  heapDelete (this=0x7ffff7f0d3c8, newTime=<value optimized out>)
    at ../WebCore/platform/Timer.cpp:235
No locals.
#6  WebCore::TimerBase::setNextFireTime (this=0x7ffff7f0d3c8, newTime=<value optimized out>)
    at ../WebCore/platform/Timer.cpp:298
        currentHeapInsertionOrder = 92766
        oldTime = 1285854341.9096789
#7  0x00007ffff4e5fa98 in WebCore::DOMTimer::~DOMTimer (this=0x7ffff7f0d3c8, 
    __in_chrg=<value optimized out>) at ../WebCore/page/DOMTimer.cpp:83
No locals.
#8  0x00007ffff54e6908 in WebCore::jsDOMWindowPrototypeFunctionClearTimeout (
    exec=0x7fffdad720b0, thisValue=..., args=...) at DerivedSources/JSDOMWindow.cpp:8624
        castedThisObj = <value optimized out>
        imp = 0x7ffff7eb8dc0
        handle = 1
Comment 3 Martin Robinson 2010-09-30 16:16:40 PDT
For me this hits the assertion:

INFO: Created user preferences directory.
ASSERTION FAILED: m_thread == currentThread()
Comment 4 Martin Robinson 2010-09-30 16:19:49 PDT
Here's a bug which tracks that particular issue: https://bugs.webkit.org/show_bug.cgi?id=30814 I have have a suspicion that it is related to https://bugs.webkit.org/show_bug.cgi?id=32689 . I've pinged dimich about it.
Comment 5 Sven Arvidsson 2011-04-22 04:54:01 PDT
With the new plugin, icedtea-web, Java applets seems to be working fine, at least in Epiphany 2.30.6.
Comment 6 Martin Robinson 2022-06-28 03:48:14 PDT
Support for plugins was removed in https://trac.webkit.org/changeset/265753/webkit.
Comment 7 Radar WebKit Bug Importer 2022-06-28 03:49:43 PDT
<rdar://problem/96050659>