It looks that is the bug in the GTK or Eclipse SWT library.
During window close process method org.eclipse.widgets.Display.removeWidget() 
calls native method org.eclipse.swt.internal.gtk.OS._g_object_get_qdata() which 
causes segmentation fault (it not cause Java exception due we are in native 
code).
Display.removeWidget() source code:
Widget removeWidget (long /*int*/ handle) {
        if (handle == 0) return null;
        lastWidget = null;
        Widget widget = null;
        int index = (int)/*64*/ OS.g_object_get_qdata (handle, 
SWT_OBJECT_INDEX) - 1;
        if (0 <= index && index < widgetTable.length) {
                widget = widgetTable [index];
                widgetTable [index] = null;
                indexTable [index] = freeSlot;
                freeSlot = index;
                OS.g_object_set_qdata (handle, SWT_OBJECT_INDEX, 0);
        }
        return widget;  
}

native method implementation:
JNIEXPORT jintLong JNICALL OS_NATIVE(_1g_1object_1get_1qdata)
        (JNIEnv *env, jclass that, jintLong arg0, jint arg1)
{
        jintLong rc = 0;
        OS_NATIVE_ENTER(env, that, _1g_1object_1get_1qdata_FUNC);
        rc = (jintLong)g_object_get_qdata((GObject *)arg0, (GQuark)arg1);
        OS_NATIVE_EXIT(env, that, _1g_1object_1get_1qdata_FUNC);
        return rc;
}

-- 
Java crashes during Eclipse Helios Start
https://bugs.launchpad.net/bugs/598371
You received this bug notification because you are a member of OpenJDK,
which is subscribed to openjdk-6 in ubuntu.

Status in “openjdk-6” package in Ubuntu: New

Bug description:
It happens when I press "OK" button on workspace-chose-window during Eclipse 
start (clean installation)

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0x00007fd843bb62b0, pid=2671, tid=140567681361680
#
# JRE version: 6.0_18-b18
# Java VM: OpenJDK 64-Bit Server VM (14.0-b16 mixed mode linux-amd64 )
# Derivative: IcedTea6 1.8
# Distribution: Ubuntu lucid (development branch), package 6b18-1.8-0ubuntu1
# Problematic frame:
# C  [libgobject-2.0.so.0+0xf2b0]  g_object_get_qdata+0x20
#
# An error report file with more information is saved as:
# /home/pawel/bin/hs_err_pid2671.log
#
# If you would like to submit a bug report, please include
# instructions how to reproduce the bug and visit:
#   https://bugs.launchpad.net/ubuntu/+source/openjdk-6/
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#



_______________________________________________
Mailing list: https://launchpad.net/~openjdk
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~openjdk
More help   : https://help.launchpad.net/ListHelp

Reply via email to