GNOME Bugzilla – Bug 669029
atk-wrapper causes orca to hang in some places and crashes programs using splash screens like netbeans
Last modified: 2019-05-29 10:52:18 UTC
Created attachment 206434 [details] this is the error log of the jvm I have the following problems that do not show up when java-atk-wrapper is disabled: Launching some java programs/installers causes orca to hang completely, even restarting at-spi does not help, for example try running the netbeans installer. And, that's even more important, some programs like netbeans itself crash in the startup process, after splash screen is shown. In the case of netbeans, I had the following segmentation fault, probably causes by the java-atk-wrapper: webczat@wlap:~/netbeans/bin$ ./netbeans # # A fatal error has been detected by the Java Runtime Environment: # # SIGSEGV (0xb) at pc=0x01019a0b, pid=3176, tid=2391227248 # # JRE version: 7.0_147-b147 # Java VM: OpenJDK Client VM (21.0-b17 mixed mode linux-x86 ) # Derivative: IcedTea7 2.0 # Distribution: Built on Ubuntu 11.04 (Wed Jan 18 12:31:49 CET 2012) # Problematic frame: # V [libjvm.so+0x252a0b] jni_GetArrayLength+0x1b # # Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again # # An error report file with more information is saved as: # /home/webczat/netbeans/bin/hs_err_pid3176.log # # If you would like to submit a bug report, please include # instructions on how to reproduce the bug and visit: # http://icedtea.classpath.org/bugzilla # ./../platform/lib/nbexec: line 550: 3176 Przerwane "/usr/lib/jvm/java7/bin/java" -Djdk.home="/usr/lib/jvm/java7" -classpath "/home/webczat/netbeans/platform/lib/boot.jar:/home/webczat/netbeans/platform/lib/org-openide-modules.jar:/home/webczat/netbeans/platform/lib/org-openide-util.jar:/home/webczat/netbeans/platform/lib/org-openide-util-lookup.jar:/home/webczat/netbeans/platform/lib/locale/boot_ja.jar:/home/webczat/netbeans/platform/lib/locale/boot_pt_BR.jar:/home/webczat/netbeans/platform/lib/locale/boot_ru.jar:/home/webczat/netbeans/platform/lib/locale/boot_zh_CN.jar:/home/webczat/netbeans/platform/lib/locale/org-openide-modules_ja.jar:/home/webczat/netbeans/platform/lib/locale/org-openide-modules_pt_BR.jar:/home/webczat/netbeans/platform/lib/locale/org-openide-modules_ru.jar:/home/webczat/netbeans/platform/lib/locale/org-openide-modules_zh_CN.jar:/home/webczat/netbeans/platform/lib/locale/org-openide-util_ja.jar:/home/webczat/netbeans/platform/lib/locale/org-openide-util-lookup_ja.jar:/home/webczat/netbeans/platform/lib/locale/org-openide-util-lookup_pt_BR.jar:/home/webczat/netbeans/platform/lib/locale/org-openide-util-lookup_ru.jar:/home/webczat/netbeans/platform/lib/locale/org-openide-util-lookup_zh_CN.jar:/home/webczat/netbeans/platform/lib/locale/org-openide-util_pt_BR.jar:/home/webczat/netbeans/platform/lib/locale/org-openide-util_ru.jar:/home/webczat/netbeans/platform/lib/locale/org-openide-util_zh_CN.jar:/usr/lib/jvm/java7/lib/dt.jar:/usr/lib/jvm/java7/lib/tools.jar" -Dnetbeans.system_http_proxy="DIRECT" -Dnetbeans.system_http_non_proxy_hosts="" -Dnetbeans.dirs="/home/webczat/netbeans/nb:/home/webczat/netbeans/ergonomics:/home/webczat/netbeans/ide:/home/webczat/netbeans/java:/home/webczat/netbeans/apisupport:./../webcommon:/home/webczat/netbeans/websvccommon:/home/webczat/netbeans/enterprise:/home/webczat/netbeans/mobility:/home/webczat/netbeans/profiler:./../python:/home/webczat/netbeans/php:./../identity:/home/webczat/netbeans/harness:/home/webczat/netbeans/cnd:/home/webczat/netbeans/dlight:/home/webczat/netbeans/groovy:./../extra:/home/webczat/netbeans/javacard:/home/webczat/netbeans/javafx:" -Dnetbeans.home="/home/webczat/netbeans/platform" '-Dnetbeans.importclass=org.netbeans.upgrade.AutoUpgrade' '-Dnetbeans.accept_license_class=org.netbeans.license.AcceptLicense' '-XX:MaxPermSize=384m' '-Xmx197m' '-client' '-Xss2m' '-Xms32m' '-XX:PermSize=32m' '-Dapple.laf.useScreenMenuBar=true' '-Dapple.awt.graphics.UseQuartz=true' '-Dsun.java2d.noddraw=true' '-Dsun.zip.disableMemoryMapping=true' -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath="/home/webczat/.netbeans/7.1/var/log/heapdump.hprof" org.netbeans.Main --userdir "/home/webczat/.netbeans/7.1" "--branding" "nb" 0<&0 webczat@wlap:~/netbeans/bin$
I am observing the same issue. I have recompiled my libatk wrapper with -g -O0 and observed that libatk wrapper passes a nullpointer to the java site when the first splashscreen gets displayed during netbeans launch. frame 1 inside jni jawobject.c (gdb) p jaw_obj->acc_context $9 = (jobject) 0x0 322 jaw_object_ref_state_set (AtkObject *atk_obj) 323 { 324 JawObject *jaw_obj = JAW_OBJECT(atk_obj); (gdb) 325 AtkStateSet* state_set = jaw_obj->state_set; 326 atk_state_set_clear_states( state_set ); 327 328 jobject ac = jaw_obj->acc_context; 329 JNIEnv *jniEnv = jaw_util_get_jni_env(); 330 jclass classAccessibleContext = (*jniEnv)->FindClass( jniEnv, "javax/accessibility/AccessibleContext" ); 331 jmethodID jmid = (*jniEnv)->GetMethodID( jniEnv, classAccessibleContext, "getAccessibleStateSet", "()Ljavax/accessibility/AccessibleStateSet;" ); 332 jobject jstate_set = (*jniEnv)->CallObjectMethod( jniEnv, ac, jmid ); (gdb) p classAccessibleContext $3 = (jclass) 0x257bf0 (gdb) p jmid $4 = (jmethodID) 0x256344 (gdb) p jstate_set $5 = (jobject) 0x0 (gdb) p jniEnv $6 = (JNIEnv *) 0x23b8c4 (gdb) p ac $7 = (jobject) 0x0 (gdb) p jaw_obj $8 = (JawObject *) 0x246418 (gdb) p jaw_obj->acc_context <---- why is this jobject NULL? $9 = (jobject) 0x0
I used the java-atk-wrapper-0.30.4-0ubuntu2 source to generate the above gdb trace. http://bazaar.launchpad.net/~ubuntu-branches/ubuntu/precise/java-atk-wrapper/precise/revision/3?st
[Resetting QA Contact to newly introduced "at-spi-maint@gnome.bugs". Reason: So far it was impossible to watch changes in at-spi bug reports without following all the specific persons (Li Yuan, Bill Haneman, Jeff Wai, ...) and also their activity outside of at-spi reports. IMPORTANT: Anyone interested in following all bug activity (including all maintainers) must watch the "at-spi-maint@gnome.bugs" dummy user by adding it to the 'Users to watch' list under Preferences->Email preferences. This is also the default procedure nowadays in GNOME when setting up new products.]
[Mass-resetting default assignee, see bug 705890. Please reclaim this bug report by setting the assignee to yourself if you still plan to work on this. Thanks!]
[Moving at-spi/java-atk-wrapper bugs to separate product. See bug 740075]
After install the latest version of java-atk-wrapper compiled from git and run netbeans, I receive the following error: # # A fatal error has been detected by the Java Runtime Environment: # # SIGSEGV (0xb) at pc=0x00007f4e0b3789b9, pid=7407, tid=139972831733504 # # JRE version: Java(TM) SE Runtime Environment (7.0_80-b15) (build 1.7.0_80-b15) # Java VM: Java HotSpot(TM) 64-Bit Server VM (24.80-b11 mixed mode linux-amd64 compressed oops) # Problematic frame: # C [libatk-wrapper.so.1.2.22+0x49b9] component_added_handler+0x9 # # Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again # # An error report file with more information is saved as: # /home/vilmar/hs_err_pid7407.log # # If you would like to submit a bug report, please visit: # http://bugreport.java.com/bugreport/crash.jsp #
Created attachment 304649 [details] log jvm from crash reported in the comment #5
(In reply to Jose Vilmar Estacio de Souza from comment #7) > Created attachment 304649 [details] > log jvm from crash reported in the comment #5 OOPS! comment #6
I found a simple way to reproduce the crash reported in comment #6. Try the following steps: 1. Launch gnome-terminal. 2. cd to ~/.netbeans/8.0.2. 8.0.2 is the version that I am using. 3. Create an empty file called lock. You can use the following command: touch lock 4. Now type netbeans. In my environment the crash appears immediately.
I believe this kind of crashes have been fixed by changes pushed for 0.35.0