Oscar's Blog

Blog de Oscar Valenzuela - GNU con Linux, Free Software, Android, Hacking

Solución a bug (crush) en Eclipse y derivados

15 Sep 2013


Me es cómodo trabajar con Eclipse, creo que ya es la costumbre, utilizo este IDE tanto para programar en el trabajo como varios de sus derivados para realizar proyectos (clientes de base de datos, JBoss, PHP, etc). El único problema es que algunos de estos forks (no me ha ocurrido en la última versión Kepler) mientras programaba ocurría un “crush” y se cerraba el programa sin motivo aparente. El error en si está reportado en el siguiente link.

El log que produce el entorno (hs_err_pidNN.log) coincide:

# A fatal error has been detected by the Java Runtime Environment: #
# SIGSEGV (0xb) at pc=0x00007f9d1d523d39, pid=8255, tid=140315299092224 #
# JRE version: 7.0_17-b02
# Java VM: Java HotSpot(TM) 64-Bit Server VM (23.7-b01 mixed mode Debian GNU/Linux-amd64 compressed oops)
# Problematic frame:
# C [libsoup-2.4.so.1+0x72d39] soup_session_feature_detach+0×19

En la excepción arrojada en el log dice (extracto):

Stack: [0x00007f9db37f1000,0x00007f9db38f2000],  sp=0x00007f9db38ef2c0,  free space=1016k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C [libsoup-2.4.so.1+0x72d39] soup_session_feature_detach+0x19

Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
j org.eclipse.swt.internal.webkit.WebKitGTK._soup_session_feature_detach(JJ)V+0
j org.eclipse.swt.internal.webkit.WebKitGTK.soup_session_feature_detach(JJ)V+9
j org.eclipse.swt.browser.WebKit.create(Lorg/eclipse/swt/widgets/Composite;I)V+920
j org.eclipse.swt.browser.Browser.(Lorg/eclipse/swt/widgets/Composite;I)V+81
j org.eclipse.jface.internal.text.html.BrowserInformationControl.isAvailable(Lorg/eclipse/swt/widgets/Composite;)Z+12
j org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover$HoverControlCreator.doCreateInformationControl(Lorg/eclipse/swt/widgets/Shell;)Lorg/eclipse/jface/text/IInformationControl;+18
j org.eclipse.jface.text.AbstractReusableInformationControlCreator.createInformationControl(Lorg/eclipse/swt/widgets/Shell;)Lorg/eclipse/jface/text/IInformationControl;+20
j org.eclipse.jface.text.AbstractInformationControlManager.getInformationControl()Lorg/eclipse/jface/text/IInformationControl;+176
j org.eclipse.jface.text.AbstractInformationControlManager.internalShowInformationControl(Lorg/eclipse/swt/graphics/Rectangle;Ljava/lang/Object;)V+18
j org.eclipse.jface.text.AbstractInformationControlManager.presentInformation()V+70
j org.eclipse.jface.text.AbstractHoverInformationControlManager.presentInformation()V+64
j org.eclipse.jface.text.TextViewerHoverManager.doPresentInformation()V+1
j org.eclipse.jface.text.TextViewerHoverManager$5.run()V+4

Por lo que al parecer es un error con webkit. La solución propuesta (como dice en la lista del bug) es editar el archivo .ini donde está la configuración (en mi caso es eclipse.ini, pero puede variar según el fork que estén usando) y agregar la siguiente línea al final:

-Dorg.eclipse.swt.browser.DefaultType=mozilla

 

Artículo original en Psep.cl, puede ser distribuido y modificado mientras incluya esta nota según Licencia CC.