Bug 157010 - [Win32] VM Crashes after changing file associations
Summary: [Win32] VM Crashes after changing file associations
Status: VERIFIED FIXED
Alias: None
Product: Platform
Classification: Eclipse Project
Component: SWT (show other bugs)
Version: 3.3   Edit
Hardware: PC Windows All
: P3 critical with 1 vote (vote)
Target Milestone: 4.7 M7   Edit
Assignee: Niraj Modi CLA
QA Contact:
URL:
Whiteboard:
Keywords: vm
: 436355 494261 (view as bug list)
Depends on:
Blocks:
 
Reported: 2006-09-12 07:28 EDT by Marco Litto CLA
Modified: 2017-05-10 02:59 EDT (History)
15 users (show)

See Also:


Attachments
C:\qa\eclipse\hs_err_pid1020.log (9.73 KB, text/plain)
2006-09-12 07:29 EDT, Marco Litto CLA
no flags Details
hs_err_pid236.log (10.50 KB, text/plain)
2007-02-21 10:03 EST, Marco Litto CLA
no flags Details
reg-file with corrupted registry key (580 bytes, text/plain)
2007-09-12 07:12 EDT, Marco Litto CLA
no flags Details
crash when adding a file editor to a file association (20.33 KB, text/plain)
2008-11-13 13:01 EST, Jay Goldman CLA
no flags Details
eclipse 3.4.1 crash when adding file association (19.97 KB, application/octet-stream)
2008-11-13 13:03 EST, Jay Goldman CLA
no flags Details
Fix buffer overflow bug on SWT-Win32 (525 bytes, patch)
2017-03-07 22:22 EST, Takuma Tsutsumi CLA
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Marco Litto CLA 2006-09-12 07:28:31 EDT
buildId=M20060629-1905

Steps to reproduce the crash:
- Open Window -> Preferences -> General -> Editors -> File Associations
- Select *.html
- Remove associated editor "Web Browser"
- Add internal Editor: Text Editor
- Ok
- File -> New -> Project -> Java Project -> next

  -> VM crashes: see attachment with log-file

Indices:
- this crash happens only on my machine. we have tested it on serveral others
- my work around is to close eclipse and reopen before the last step (File -> ...)

Configuration Details:
*** Date: Tue Sep 12 13:30:32 CEST 2006

*** Platform Details:

*** System properties:
awt.toolkit=sun.awt.windows.WToolkit
eclipse.buildId=M20060629-1905
eclipse.commands=-os
win32
-ws
win32
-arch
x86
-launcher
C:\qa\eclipse\eclipse.exe
-name
Eclipse
-showsplash
600
-exitdata
17f0_84
-nl
en_UK
-vm
C:\WINDOWS\system32\javaw.exe
eclipse.ee.install.verify=false
eclipse.product=org.eclipse.sdk.ide
eclipse.startTime=1158060501485
eclipse.vm=C:\WINDOWS\system32\javaw.exe
eclipse.vmargs=-Xms40m
-Xmx256m
-jar
C:\qa\eclipse\startup.jar
eof=eof
file.encoding=Cp1252
file.encoding.pkg=sun.io
file.separator=\
java.awt.graphicsenv=sun.awt.Win32GraphicsEnvironment
java.awt.printerjob=sun.awt.windows.WPrinterJob
java.class.path=C:\qa\eclipse\startup.jar
java.class.version=49.0
java.endorsed.dirs=C:\Programme\Java\jre1.5.0_06\lib\endorsed
java.ext.dirs=C:\Programme\Java\jre1.5.0_06\lib\ext
java.home=C:\Programme\Java\jre1.5.0_06
java.io.tmpdir=C:\DOKUME~1\LO\LOKALE~1\Temp\
java.library.path=C:\WINDOWS\system32;.;C:\WINDOWS\system32;C:\WINDOWS;C:\PROGRAMME\ODI\OSTORE\BIN;C:\PROGRAMME\THINKPAD\UTILITIES;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Programme\ATI Technologies\ATI Control Panel;C:\Programme\ATI Technologies\Fire GL 3D Studio Max;C:\Programme\PC-Doctor for Windows\services;C:\Programme\Microsoft SQL Server\80\Tools\Binn\;C:\Programme\Gemeinsame Dateien\Autodesk Shared\;C:\Programme\ThinkPad\ConnectUtilities;C:\Programme\FastObjects_t7_9.5\runtime\bin;C:\Programme\FastObjects_t7_9.5\bin;C:\Programme\OpenVPN\bin
java.runtime.name=Java(TM) 2 Runtime Environment, Standard Edition
java.runtime.version=1.5.0_06-b05
java.specification.name=Java Platform API Specification
java.specification.vendor=Sun Microsystems Inc.
java.specification.version=1.5
java.vendor=Sun Microsystems Inc.
java.vendor.url=http://java.sun.com/
java.vendor.url.bug=http://java.sun.com/cgi-bin/bugreport.cgi
java.version=1.5.0_06
java.vm.info=mixed mode
java.vm.name=Java HotSpot(TM) Client VM
java.vm.specification.name=Java Virtual Machine Specification
java.vm.specification.vendor=Sun Microsystems Inc.
java.vm.specification.version=1.0
java.vm.vendor=Sun Microsystems Inc.
java.vm.version=1.5.0_06-b05
line.separator=

org.osgi.framework.bootdelegation=*
org.osgi.framework.executionenvironment=OSGi/Minimum-1.0,OSGi/Minimum-1.1,JRE-1.1,J2SE-1.2,J2SE-1.3,J2SE-1.4,J2SE-1.5
org.osgi.framework.language=en
org.osgi.framework.os.name=WindowsXP
org.osgi.framework.os.version=5.1
org.osgi.framework.processor=x86
org.osgi.framework.system.packages=javax.accessibility,javax.activity,javax.crypto,javax.crypto.interfaces,javax.crypto.spec,javax.imageio,javax.imageio.event,javax.imageio.metadata,javax.imageio.plugins.bmp,javax.imageio.plugins.jpeg,javax.imageio.spi,javax.imageio.stream,javax.management,javax.management.loading,javax.management.modelmbean,javax.management.monitor,javax.management.openmbean,javax.management.relation,javax.management.remote,javax.management.remote.rmi,javax.management.timer,javax.naming,javax.naming.directory,javax.naming.event,javax.naming.ldap,javax.naming.spi,javax.net,javax.net.ssl,javax.print,javax.print.attribute,javax.print.attribute.standard,javax.print.event,javax.rmi,javax.rmi.CORBA,javax.rmi.ssl,javax.security.auth,javax.security.auth.callback,javax.security.auth.kerberos,javax.security.auth.login,javax.security.auth.spi,javax.security.auth.x500,javax.security.cert,javax.security.sasl,javax.sound.midi,javax.sound.midi.spi,javax.sound.sampled,javax.sound.sampled.spi,javax.sql,javax.sql.rowset,javax.sql.rowset.serial,javax.sql.rowset.spi,javax.swing,javax.swing.border,javax.swing.colorchooser,javax.swing.event,javax.swing.filechooser,javax.swing.plaf,javax.swing.plaf.basic,javax.swing.plaf.metal,javax.swing.plaf.multi,javax.swing.plaf.synth,javax.swing.table,javax.swing.text,javax.swing.text.html,javax.swing.text.html.parser,javax.swing.text.rtf,javax.swing.tree,javax.swing.undo,javax.transaction,javax.transaction.xa,javax.xml,javax.xml.datatype,javax.xml.namespace,javax.xml.parsers,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.transform.stream,javax.xml.validation,javax.xml.xpath,org.ietf.jgss,org.omg.CORBA,org.omg.CORBA_2_3,org.omg.CORBA_2_3.portable,org.omg.CORBA.DynAnyPackage,org.omg.CORBA.ORBPackage,org.omg.CORBA.portable,org.omg.CORBA.TypeCodePackage,org.omg.CosNaming,org.omg.CosNaming.NamingContextExtPackage,org.omg.CosNaming.NamingContextPackage,org.omg.Dynamic,org.omg.DynamicAny,org.omg.DynamicAny.DynAnyFactoryPackage,org.omg.DynamicAny.DynAnyPackage,org.omg.IOP,org.omg.IOP.CodecFactoryPackage,org.omg.IOP.CodecPackage,org.omg.Messaging,org.omg.PortableInterceptor,org.omg.PortableInterceptor.ORBInitInfoPackage,org.omg.PortableServer,org.omg.PortableServer.CurrentPackage,org.omg.PortableServer.POAManagerPackage,org.omg.PortableServer.POAPackage,org.omg.PortableServer.portable,org.omg.PortableServer.ServantLocatorPackage,org.omg.SendingContext,org.omg.stub.java.rmi,org.w3c.dom,org.w3c.dom.bootstrap,org.w3c.dom.events,org.w3c.dom.ls,org.xml.sax,org.xml.sax.ext,org.xml.sax.helpers
org.osgi.framework.vendor=Eclipse
org.osgi.framework.version=1.3.0
org.osgi.supports.framework.extension=true
os.arch=x86
os.name=Windows XP
os.version=5.1
osgi.arch=x86
osgi.bundles=org.eclipse.equinox.common@2:start, org.eclipse.update.configurator@3:start, org.eclipse.core.runtime@start
osgi.bundlestore=C:\qa\eclipse\configuration\org.eclipse.osgi\bundles
osgi.configuration.area=file:/C:/qa/eclipse/configuration/
osgi.framework=file:/c:/qa/eclipse/plugins/org.eclipse.osgi_3.2.0.v20060601.jar
osgi.framework.beginningstartlevel=1
osgi.framework.shape=jar
osgi.framework.version=3.2.0.v20060601
osgi.install.area=file:/C:/qa/eclipse/
osgi.instance.area=file:/C:/qa/eclipse/workspace/
osgi.instance.area.default=file:/C:/Dokumente und Einstellungen/LO/workspace/
osgi.logfile=C:\qa\eclipse\workspace\.metadata\.log
osgi.manifest.cache=C:\qa\eclipse\configuration\org.eclipse.osgi\manifests
osgi.nl=en_UK
osgi.nl.user=en_UK
osgi.os=win32
osgi.splashLocation=c:\qa\eclipse\plugins\org.eclipse.platform_3.2.0.v20060601\splash.bmp
osgi.splashPath=platform:/base/plugins/org.eclipse.platform
osgi.syspath=c:\qa\eclipse\plugins
osgi.ws=win32
path.separator=;
sun.arch.data.model=32
sun.boot.class.path=C:\Programme\Java\jre1.5.0_06\lib\rt.jar;C:\Programme\Java\jre1.5.0_06\lib\i18n.jar;C:\Programme\Java\jre1.5.0_06\lib\sunrsasign.jar;C:\Programme\Java\jre1.5.0_06\lib\jsse.jar;C:\Programme\Java\jre1.5.0_06\lib\jce.jar;C:\Programme\Java\jre1.5.0_06\lib\charsets.jar;C:\Programme\Java\jre1.5.0_06\classes
sun.boot.library.path=C:\Programme\Java\jre1.5.0_06\bin
sun.cpu.endian=little
sun.cpu.isalist=pentium_pro+mmx pentium_pro pentium+mmx pentium i486 i386 i86
sun.desktop=windows
sun.io.unicode.encoding=UnicodeLittle
sun.jnu.encoding=Cp1252
sun.management.compiler=HotSpot Client Compiler
sun.os.patch.level=Service Pack 2
user.country=DE
user.dir=C:\qa\eclipse
user.home=C:\Dokumente und Einstellungen\LO
user.language=de
user.name=LO
user.timezone=Europe/Berlin
user.variant=

*** Features:
org.eclipse.jdt (3.2.0.v20060609m-F7snq1fxia-Z4XP) "Eclipse Java Development Tools"
org.eclipse.jdt.source (3.2.0.v20060609m-F7snq1fxia-Z4XP) "Eclipse Java Development Tools SDK"
org.eclipse.pde (3.2.0.v20060609m------6zXJJzJzJq) "Eclipse Plug-in Development Environment"
org.eclipse.pde.source (3.2.0.v20060609m------6zXJJzJzJq) "Eclipse Plug-in Development Environment Developer Resources"
org.eclipse.platform (3.2.0.v20060609m-AgOexn6hlEUsvBO) "Eclipse Platform"
org.eclipse.platform.source (3.2.0.v20060609m-AgOexn6hlEUsvBO) "Eclipse Platform Plug-in Developer Resources"
org.eclipse.rcp (3.2.0.v20060609m-SVDNgVrNoh-MeGG) "Eclipse RCP"
org.eclipse.rcp.nls1 (3.2.0.v200606220026) "Eclipse RCP"
org.eclipse.rcp.source (3.2.0.v20060609m-SVDNgVrNoh-MeGG) "Eclipse RCP Plug-in Developer Resources"
org.eclipse.sdk (3.2.0.v20060609m-GNq6oQq-7es-Y81) "Eclipse Project SDK"

*** Plug-in Registry:
com.ibm.icu (3.4.4.1) "International Components for Unicode for Java (ICU4J)" [Active]
com.ibm.icu.nl1 (3.4.4.v200606220026) "International Components for Unicode for Java (ICU4J) NLS Support" [Resolved]
com.ibm.icu.source (3.4.4.1) "International Components for Unicode for Java (ICU4J) source plug-in" [Resolved]
com.ibm.icu.source.nl1 (3.4.4.v200606220026) "International Components for Unicode for Java (ICU4J) source plug-in NLS Support" [Resolved]
com.jcraft.jsch (0.1.28) "JSch" [Resolved]
org.apache.ant (1.6.5) "Apache Ant" [Resolved]
org.apache.lucene (1.4.103.v20060601) "Apache Lucene" [Resolved]
org.eclipse.ant.core (3.1.100.v20060531) "Ant Build Tool Core" [Resolved]
org.eclipse.ant.core.nl1 (3.1.100.v200606220026) "Ant Build Tool Core NLS Support" [Resolved]
org.eclipse.ant.ui (3.2.0.v20060531) "Ant UI" [Resolved]
org.eclipse.ant.ui.nl1 (3.2.0.v200606220026) "Ant UI NLS Support" [Resolved]
org.eclipse.compare (3.2.0.v20060605) "Compare Support" [Resolved]
org.eclipse.compare.nl1 (3.2.0.v200606220026) "Compare Support NLS Support" [Resolved]
org.eclipse.core.boot (3.1.100.v20060603) "Core Boot" [Resolved]
org.eclipse.core.boot.nl1 (3.1.100.v200606220026) "Core Boot NLS Support" [Resolved]
org.eclipse.core.commands (3.2.0.I20060605-1400) "Commands" [Resolved]
org.eclipse.core.commands.nl1 (3.2.0.v200606220026) "Commands NLS Support" [Resolved]
org.eclipse.core.contenttype (3.2.0.v20060603) "Eclipse Content Mechanism" [Active]
org.eclipse.core.contenttype.nl1 (3.2.0.v200606220026) "Eclipse Content Mechanism NLS Support" [Resolved]
org.eclipse.core.expressions (3.2.0.v20060605-1400) "Expression Language" [Active]
org.eclipse.core.expressions.nl1 (3.2.0.v200606220026) "Expression Language NLS Support" [Resolved]
org.eclipse.core.filebuffers (3.2.0.v20060605-1400) "File Buffers" [Active]
org.eclipse.core.filebuffers.nl1 (3.2.0.v200606220026) "File Buffers NLS Support" [Resolved]
org.eclipse.core.filesystem (1.0.0.v20060603) "Core File Systems" [Resolved]
org.eclipse.core.filesystem.nl1 (1.0.0.v200606220026) "Core File Systems NLS Support" [Resolved]
org.eclipse.core.filesystem.win32.x86 (1.0.0.v20060603) "Core File System for Windows" [Resolved]
org.eclipse.core.jobs (3.2.0.v20060603) "Eclipse Jobs Mechanism" [Active]
org.eclipse.core.jobs.nl1 (3.2.0.v200606220026) "Eclipse Jobs Mechanism NLS Support" [Resolved]
org.eclipse.core.resources (3.2.0.v20060603) "Core Resource Management" [Active]
org.eclipse.core.resources.compatibility (3.2.0.v20060603) "Core Resource Management Compatibility Fragment" [Resolved]
org.eclipse.core.resources.nl1 (3.2.0.v200606220026) "Core Resource Management NLS Support" [Resolved]
org.eclipse.core.resources.win32 (3.2.0.v20060603) "Core Resource Management Win32 Fragment" [Resolved]
org.eclipse.core.runtime (3.2.0.v20060603) "Core Runtime" [Active]
org.eclipse.core.runtime.compatibility (3.1.100.v20060603) "Core Runtime Plug-in Compatibility" [Active]
org.eclipse.core.runtime.compatibility.auth (3.2.0.v20060601) "Authorization Compatibility Plug-in" [Active]
org.eclipse.core.runtime.compatibility.auth.nl1 (3.2.0.v200606220026) "Authorization Compatibility Plug-in NLS Support" [Resolved]
org.eclipse.core.runtime.compatibility.nl1 (3.1.100.v200606220026) "Core Runtime Plug-in Compatibility NLS Support" [Resolved]
org.eclipse.core.runtime.compatibility.registry (3.2.0.v20060603) "Eclipse Registry Compatibility Fragment" [Resolved]
org.eclipse.core.runtime.nl1 (3.2.0.v200606220026) "Core Runtime NLS Support" [Resolved]
org.eclipse.core.variables (3.1.100.v20060605) "Core Variables" [Resolved]
org.eclipse.core.variables.nl1 (3.1.100.v200606220026) "Core Variables NLS Support" [Resolved]
org.eclipse.debug.core (3.2.0.v20060605) "Debug Core" [Active]
org.eclipse.debug.core.nl1 (3.2.0.v200606220026) "Debug Core NLS Support" [Resolved]
org.eclipse.debug.ui (3.2.0.v20060605) "Debug UI" [Active]
org.eclipse.debug.ui.nl1 (3.2.0.v200606220026) "Debug UI NLS Support" [Resolved]
org.eclipse.equinox.common (3.2.0.v20060603) "Common Eclipse Runtime" [Active]
org.eclipse.equinox.common.nl1 (3.2.0.v200606220026) "Common Eclipse Runtime NLS Support" [Resolved]
org.eclipse.equinox.preferences (3.2.0.v20060601) "Eclipse Preferences Mechanism" [Active]
org.eclipse.equinox.preferences.nl1 (3.2.0.v200606220026) "Eclipse Preferences Mechanism NLS Support" [Resolved]
org.eclipse.equinox.registry (3.2.0.v20060601) "Extension Registry Support" [Active]
org.eclipse.equinox.registry.nl1 (3.2.0.v200606220026) "Extension Registry Support NLS Support" [Resolved]
org.eclipse.help (3.2.0.v20060602) "Help System Core" [Active]
org.eclipse.help.appserver (3.1.100.v20060602) "Help Application Server" [Resolved]
org.eclipse.help.appserver.nl1 (3.1.100.v200606220026) "org.eclipse.help.appserver NLS Support" [Resolved]
org.eclipse.help.base (3.2.0.v20060601) "Help System Base" [Resolved]
org.eclipse.help.base.nl1 (3.2.0.v200606220026) "org.eclipse.help.base NLS Support" [Resolved]
org.eclipse.help.nl1 (3.2.0.v200606220026) "org.eclipse.help NLS Support" [Resolved]
org.eclipse.help.ui (3.2.0.v20060602) "Help System UI" [Resolved]
org.eclipse.help.ui.nl1 (3.2.0.v200606220026) "org.eclipse.help.ui NLS Support" [Resolved]
org.eclipse.help.webapp (3.2.0.v20060602) "Help System Webapp" [Resolved]
org.eclipse.help.webapp.nl1 (3.2.0.v200606220026) "org.eclipse.help.webapp NLS Support" [Resolved]
org.eclipse.jdt (3.2.0.v20060605-1400) "Eclipse Java Development Tools" [Resolved]
org.eclipse.jdt.apt.core (3.2.0.v20060602-1740) "Java Annotation Processing Core" [Resolved]
org.eclipse.jdt.apt.core.nl1 (3.2.0.v200606220026) "Java Annotation Processing Core NLS Support" [Resolved]
org.eclipse.jdt.apt.ui (3.2.0.v20060602-1740) "Java Annotation Processing UI" [Resolved]
org.eclipse.jdt.apt.ui.nl1 (3.2.0.v200606220026) "Java Annotation Processing UI NLS Support" [Resolved]
org.eclipse.jdt.core (3.2.0.v_671) "Java Development Tools Core" [Active]
org.eclipse.jdt.core.manipulation (1.0.0.v20060605-1400) "Java Code Manipulation Functionality" [Resolved]
org.eclipse.jdt.core.manipulation.nl1 (1.0.0.v200606220026) "Java Code Manipulation Functionality NLS Support" [Resolved]
org.eclipse.jdt.core.nl1 (3.2.0.v200606220026) "Java Development Tools Core NLS Support" [Resolved]
org.eclipse.jdt.debug (3.2.0.v20060605) "JDI Debug Model" [Resolved]
org.eclipse.jdt.debug.nl1 (3.2.0.v200606220026) "JDI Debug Model NLS Support" [Resolved]
org.eclipse.jdt.debug.ui (3.2.0.v20060605) "JDI Debug UI" [Resolved]
org.eclipse.jdt.debug.ui.nl1 (3.2.0.v200606220026) "JDI Debug UI NLS Support" [Resolved]
org.eclipse.jdt.doc.isv (3.2.0.v20060605-1400) "Eclipse JDT Plug-in Developer Guide" [Resolved]
org.eclipse.jdt.doc.isv.nl1 (3.2.0.v200606220026) "Eclipse JDT Plug-in Developer Guide NLS Support" [Resolved]
org.eclipse.jdt.doc.user (3.2.0.v20060605-1400) "Eclipse Java Development User Guide" [Resolved]
org.eclipse.jdt.doc.user.nl1 (3.2.0.v200606220026) "Eclipse Java Development User Guide NLS Support" [Resolved]
org.eclipse.jdt.junit (3.2.0.v20060605-1400) "Java Development Tools JUnit support" [Resolved]
org.eclipse.jdt.junit.nl1 (3.2.0.v200606220026) "Java Development Tools JUnit support NLS Support" [Resolved]
org.eclipse.jdt.junit.runtime (3.2.0.v20060605-1400) "Java Development Tools JUnit runtime support" [Resolved]
org.eclipse.jdt.junit.runtime.nl1 (3.2.0.v200606220026) "Java Development Tools JUnit runtime support NLS Support" [Resolved]
org.eclipse.jdt.junit4.runtime (1.0.0.v20060605-1400) "Java Development Tools JUnit4 runtime support" [Resolved]
org.eclipse.jdt.junit4.runtime.nl1 (1.0.0.v200606220026) "Java Development Tools JUnit4 runtime support NLS Support" [Resolved]
org.eclipse.jdt.launching (3.2.0.v20060605) "Java Development Tools Launching Support" [Resolved]
org.eclipse.jdt.launching.nl1 (3.2.0.v200606220026) "Java Development Tools Launching Support NLS Support" [Resolved]
org.eclipse.jdt.nl1 (3.2.0.v200606220026) "Eclipse Java Development Tools NLS Support" [Resolved]
org.eclipse.jdt.source (3.2.0.v20060609m-F7snq1fxia-Z4XP) "Eclipse Java Development Tools SDK" [Resolved]
org.eclipse.jdt.source.nl1 (3.2.0.v200606220026) "Eclipse Java Development Tools SDK NLS Support" [Resolved]
org.eclipse.jdt.ui (3.2.0.v20060605-1400) "Java Development Tools UI" [Active]
org.eclipse.jdt.ui.nl1 (3.2.0.v200606220026) "Java Development Tools UI NLS Support" [Resolved]
org.eclipse.jface (3.2.0.I20060605-1400) "JFace" [Resolved]
org.eclipse.jface.databinding (1.0.0.I20060605-1400) "JFace Data Binding" [Resolved]
org.eclipse.jface.databinding.nl1 (1.0.0.v200606220026) "JFace Data Binding NLS Support" [Resolved]
org.eclipse.jface.nl1 (3.2.0.v200606220026) "JFace NLS Support" [Resolved]
org.eclipse.jface.text (3.2.0.v20060605-1400) "JFace Text" [Resolved]
org.eclipse.jface.text.nl1 (3.2.0.v200606220026) "JFace Text NLS Support" [Resolved]
org.eclipse.ltk.core.refactoring (3.2.0.v20060605-1400) "Refactoring Core" [Resolved]
org.eclipse.ltk.core.refactoring.nl1 (3.2.0.v200606220026) "Refactoring Core NLS Support" [Resolved]
org.eclipse.ltk.ui.refactoring (3.2.0.v20060605-1400) "Refactoring UI" [Resolved]
org.eclipse.ltk.ui.refactoring.nl1 (3.2.0.v200606220026) "Refactoring UI NLS Support" [Resolved]
org.eclipse.osgi.nl1 (3.2.0.v200606220026) "NL1 Fragment" [Resolved]
org.eclipse.osgi.services (3.1.100.v20060601) "OSGi Release 3 Services" [Resolved]
org.eclipse.osgi.services.nl1 (3.1.100.v200606220026) "org.eclipse.osgi.services NLS Support" [Resolved]
org.eclipse.osgi.util (3.1.100.v20060601) "OSGi R3 Utility Classes" [Resolved]
org.eclipse.osgi.util.nl1 (3.1.100.v200606220026) "org.eclipse.osgi.util NLS Support" [Resolved]
org.eclipse.pde (3.2.0.v20060605) "Eclipse Plug-in Development Environment" [Resolved]
org.eclipse.pde.build (3.2.0.v20060603) "Plug-in Development Environment Build Support" [Resolved]
org.eclipse.pde.build.nl1 (3.2.0.v200606220026) "Plug-in Development Environment Build Support NLS Support" [Resolved]
org.eclipse.pde.core (3.2.0.v20060605) "Plug-in Development Core" [Resolved]
org.eclipse.pde.core.nl1 (3.2.0.v200606220026) "org.eclipse.pde.core NLS Support" [Resolved]
org.eclipse.pde.doc.user (3.2.0.v20060605) "Eclipse Plug-in Development User Guide" [Resolved]
org.eclipse.pde.doc.user.nl1 (3.2.0.v200606220026) "Eclipse Plug-in Development User Guide NLS Support" [Resolved]
org.eclipse.pde.junit.runtime (3.2.0.v20060605) "PDE JUnit Plug-in Test" [Resolved]
org.eclipse.pde.junit.runtime.nl1 (3.2.0.v200606220026) "PDE JUnit Plug-in Test NLS Support" [Resolved]
org.eclipse.pde.nl1 (3.2.0.v200606220026) "Eclipse Plug-in Development Environment NLS Support" [Resolved]
org.eclipse.pde.runtime (3.2.0.v20060605) "Plug-in Development Environment Runtime" [Resolved]
org.eclipse.pde.runtime.nl1 (3.2.0.v200606220026) "org.eclipse.pde.runtime NLS Support" [Resolved]
org.eclipse.pde.source (3.2.0.v20060609m------6zXJJzJzJq) "Eclipse Plug-in Development Environment Developer Resources" [Resolved]
org.eclipse.pde.source.nl1 (3.2.0.v200606220026) "Eclipse Plug-in Development Environment Developer Resources NLS Support" [Resolved]
org.eclipse.pde.ui (3.2.0.v20060605) "Plug-in Development UI" [Resolved]
org.eclipse.pde.ui.nl1 (3.2.0.v200606220026) "org.eclipse.pde.ui NLS Support" [Resolved]
org.eclipse.platform (3.2.0.v20060601) "Eclipse Platform" [Resolved]
org.eclipse.platform.doc.isv (3.2.0.v20060612-0900) "Eclipse Platform Plug-in Developer Guide" [Resolved]
org.eclipse.platform.doc.isv.nl1 (3.2.0.v200606220026) "Eclipse Platform Plug-in Developer Guide NLS Support" [Resolved]
org.eclipse.platform.doc.user (3.2.0.v20060605) "Eclipse Workbench User Guide" [Resolved]
org.eclipse.platform.doc.user.nl1 (3.2.0.v200606220026) "Eclipse Workbench User Guide NLS Support" [Resolved]
org.eclipse.platform.nl1 (3.2.0.v200606220026) "Eclipse Platform NLS Support" [Resolved]
org.eclipse.platform.source (3.2.0.v20060609m-AgOexn6hlEUsvBO) "Eclipse Platform Plug-in Developer Resources" [Resolved]
org.eclipse.platform.source.nl1 (3.2.0.v200606220026) "Eclipse Platform Plug-in Developer Resources NLS Support" [Resolved]
org.eclipse.platform.source.win32.win32.x86 (3.2.0.v20060609m-AgOexn6hlEUsvBO) "Eclipse Platform Plug-in Developer Resources" [Resolved]
org.eclipse.rcp (3.2.0.v20060605) "Eclipse RCP" [Resolved]
org.eclipse.rcp.nl1 (3.2.0.v200606220026) "Eclipse RCP NLS Support" [Resolved]
org.eclipse.rcp.source (3.2.0.v20060609m-SVDNgVrNoh-MeGG) "Eclipse RCP Plug-in Developer Resources" [Resolved]
org.eclipse.rcp.source.nl1 (3.2.0.v200606220026) "Eclipse RCP Plug-in Developer Resources NLS Support" [Resolved]
org.eclipse.rcp.source.win32.win32.x86 (3.2.0.v20060609m-SVDNgVrNoh-MeGG) "Eclipse RCP Plug-in Developer Resources" [Resolved]
org.eclipse.sdk (3.2.0.v20060605) "Eclipse Project SDK" [Resolved]
org.eclipse.sdk.nl1 (3.2.0.v200606220026) "Eclipse Project SDK NLS Support" [Resolved]
org.eclipse.search (3.2.0.v20060605-1400) "Search Support" [Resolved]
org.eclipse.search.nl1 (3.2.0.v200606220026) "Search Support NLS Support" [Resolved]
org.eclipse.swt (3.2.0.v3232o) "Standard Widget Toolkit" [Resolved]
org.eclipse.swt.nl1 (3.2.0.v200606220026) "Standard Widget Toolkit NLS Support" [Resolved]
org.eclipse.swt.win32.win32.x86 (3.2.0.v3232m) "Standard Widget Toolkit for Windows" [Resolved]
org.eclipse.team.core (3.2.0.I200606051140) "Team Support Core" [Active]
org.eclipse.team.core.nl1 (3.2.0.v200606220026) "Team Support Core NLS Support" [Resolved]
org.eclipse.team.cvs.core (3.2.0.M20060628) "CVS Team Provider Core" [Resolved]
org.eclipse.team.cvs.core.nl1 (3.2.0.v200606220026) "CVS Team Provider Core NLS Support" [Resolved]
org.eclipse.team.cvs.ssh (3.2.0.I200606011710) "CVS SSH Core" [Resolved]
org.eclipse.team.cvs.ssh.nl1 (3.2.0.v200606220026) "CVS SSH Core NLS Support" [Resolved]
org.eclipse.team.cvs.ssh2 (3.2.0.I200606051140) "CVS SSH2" [Resolved]
org.eclipse.team.cvs.ssh2.nl1 (3.2.0.v200606220026) "CVS SSH2 NLS Support" [Resolved]
org.eclipse.team.cvs.ui (3.2.0.I200606051140) "CVS Team Provider UI" [Resolved]
org.eclipse.team.cvs.ui.nl1 (3.2.0.v200606220026) "CVS Team Provider UI NLS Support" [Resolved]
org.eclipse.team.ui (3.2.0.I200606051140) "Team Support UI" [Resolved]
org.eclipse.team.ui.nl1 (3.2.0.v200606220026) "Team Support UI NLS Support" [Resolved]
org.eclipse.text (3.2.0.v20060605-1400) "Text" [Resolved]
org.eclipse.text.nl1 (3.2.0.v200606220026) "Text NLS Support" [Resolved]
org.eclipse.tomcat (4.1.130.v20060601) "Tomcat Wrapper" [Resolved]
org.eclipse.tomcat.nl1 (4.1.130.v200606220026) "Tomcat Wrapper NLS Support" [Resolved]
org.eclipse.ui (3.2.0.I20060605-1400) "Eclipse UI" [Active]
org.eclipse.ui.browser (3.2.0.v20060602) "Browser Support" [Resolved]
org.eclipse.ui.browser.nl1 (3.2.0.v200606220026) "org.eclipse.ui.browser NLS Support" [Resolved]
org.eclipse.ui.cheatsheets (3.2.0.v20060602) "Cheat Sheets" [Resolved]
org.eclipse.ui.cheatsheets.nl1 (3.2.0.v200606220026) "org.eclipse.ui.cheatsheets NLS Support" [Resolved]
org.eclipse.ui.console (3.1.100.v20060605) "Console" [Resolved]
org.eclipse.ui.console.nl1 (3.1.100.v200606220026) "Console NLS Support" [Resolved]
org.eclipse.ui.editors (3.2.0.v20060605-1400) "Default Text Editor" [Active]
org.eclipse.ui.editors.nl1 (3.2.0.v200606220026) "Default Text Editor NLS Support" [Resolved]
org.eclipse.ui.externaltools (3.1.100.v20060605) "External Tools" [Active]
org.eclipse.ui.externaltools.nl1 (3.1.100.v200606220026) "org.eclipse.ui.externaltools NLS Support" [Resolved]
org.eclipse.ui.forms (3.2.0.v20060602) "Eclipse Forms" [Resolved]
org.eclipse.ui.forms.nl1 (3.2.0.v200606220026) "org.eclipse.ui.forms NLS Support" [Resolved]
org.eclipse.ui.ide (3.2.0.I20060605-1400) "Eclipse IDE UI" [Active]
org.eclipse.ui.ide.nl1 (3.2.0.v200606220026) "org.eclipse.ui.ide NLS Support" [Resolved]
org.eclipse.ui.intro (3.2.0.v20060601) "Welcome Framework" [Resolved]
org.eclipse.ui.intro.nl1 (3.2.0.v200606220026) "org.eclipse.ui.intro NLS Support" [Resolved]
org.eclipse.ui.intro.universal (3.2.0.v20060602) "Universal Welcome" [Resolved]
org.eclipse.ui.intro.universal.nl1 (3.2.0.v200606220026) "org.eclipse.ui.intro.universal NLS Support" [Resolved]
org.eclipse.ui.navigator (3.2.0.I20060605-1400) "Common Navigator View" [Resolved]
org.eclipse.ui.navigator.nl1 (3.2.0.v200606220026) "org.eclipse.ui.navigator NLS Support" [Resolved]
org.eclipse.ui.navigator.resources (3.2.0.I20060605-1400) "Navigator Workbench Components" [Resolved]
org.eclipse.ui.navigator.resources.nl1 (3.2.0.v200606220026) "org.eclipse.ui.navigator.resources NLS Support" [Resolved]
org.eclipse.ui.nl1 (3.2.0.v200606220026) "org.eclipse.ui NLS Support" [Resolved]
org.eclipse.ui.presentations.r21 (3.2.0.I20060605-1400) "R21 Presentation Plug-in" [Resolved]
org.eclipse.ui.presentations.r21.nl1 (3.2.0.v200606220026) "R21 Presentation Plug-in NLS Support" [Resolved]
org.eclipse.ui.views (3.2.0.I20060605-1400) "Views" [Active]
org.eclipse.ui.views.nl1 (3.2.0.v200606220026) "Views NLS Support" [Resolved]
org.eclipse.ui.views.properties.tabbed (3.2.0.I20060605-1400) "Tabbed Properties View" [Resolved]
org.eclipse.ui.views.properties.tabbed.nl1 (3.2.0.v200606220026) "org.eclipse.ui.views.properties.tabbed NLS Support" [Resolved]
org.eclipse.ui.win32 (3.2.0.I20060605-1400) "Eclipse UI Win32 Enhancements" [Resolved]
org.eclipse.ui.workbench (3.2.0.I20060605-1400) "Workbench" [Active]
org.eclipse.ui.workbench.compatibility (3.2.0.I20060605-1400) "Workbench Compatibility" [Resolved]
org.eclipse.ui.workbench.nl1 (3.2.0.v200606220026) "Workbench NLS Support" [Resolved]
org.eclipse.ui.workbench.texteditor (3.2.0.v20060605-1400) "Text Editor Framework" [Active]
org.eclipse.ui.workbench.texteditor.nl1 (3.2.0.v200606220026) "Text Editor Framework NLS Support" [Resolved]
org.eclipse.update.configurator (3.2.0.v20060605) "Install/Update Configurator" [Active]
org.eclipse.update.configurator.nl1 (3.2.0.v200606220026) "Install/Update Configurator NLS Support" [Resolved]
org.eclipse.update.core (3.2.0.v20060605) "Install/Update Core" [Active]
org.eclipse.update.core.nl1 (3.2.0.v200606220026) "Install/Update Core NLS Support" [Resolved]
org.eclipse.update.core.win32 (3.2.0.v20060605) "Install/Update Core for Windows" [Resolved]
org.eclipse.update.scheduler (3.2.0.v20060605) "Automatic Updates Scheduler" [Active]
org.eclipse.update.scheduler.nl1 (3.2.0.v200606220026) "Automatic Updates Scheduler NLS Support" [Resolved]
org.eclipse.update.ui (3.2.0.v20060605) "Install/Update UI" [Resolved]
org.eclipse.update.ui.nl1 (3.2.0.v200606220026) "Install/Update UI NLS Support" [Resolved]
org.junit (3.8.1) "JUnit Testing Framework" [Resolved]
org.junit4 (4.1.0) "JUnit Testing Framework Version 4" [Resolved]
system.bundle (3.2.0.v20060601) "OSGi System Bundle" [Active]

*** User Preferences:
#Tue Sep 12 13:30:32 CEST 2006
/instance/org.eclipse.ui.workbench/resourcetypes=<?xml version\="1.0" encoding\="UTF-8"?>\r\n<editors version\="3.1">\r\n<info extension\="jpage" name\="*">\r\n<editor id\="org.eclipse.jdt.debug.ui.SnippetEditor"/>\r\n</info>\r\n<info extension\="html" name\="*">\r\n<editor id\="org.eclipse.ui.DefaultTextEditor"/>\r\n<deletedEditor id\="org.eclipse.ui.browser.editorSupport"/>\r\n<defaultEditor id\="org.eclipse.ui.DefaultTextEditor"/>\r\n</info>\r\n<info extension\="shtml" name\="*">\r\n<editor id\="org.eclipse.ui.browser.editorSupport"/>\r\n</info>\r\n<info extension\="properties" name\="sample">\r\n<editor id\="org.eclipse.pde.ui.sampleEditor"/>\r\n<defaultEditor id\="org.eclipse.pde.ui.sampleEditor"/>\r\n</info>\r\n<info extension\="htm" name\="*">\r\n<editor id\="org.eclipse.ui.browser.editorSupport"/>\r\n</info>\r\n<info extension\="jardesc" name\="*">\r\n<editor id\="org.eclipse.jdt.ui.JARDescEditor"/>\r\n<defaultEditor id\="org.eclipse.jdt.ui.JARDescEditor"/>\r\n</info>\r\n</editors>
/instance/org.eclipse.jdt.ui/org.eclipse.jface.textfont=1|Courier New|10|0|WINDOWS|1|0|0|0|0|0|0|0|0|1|0|0|0|0|Courier New;
/instance/org.eclipse.ui.workbench/editors=<?xml version\="1.0" encoding\="UTF-8"?>\r\n<editors>\r\n<descriptor class\="org.eclipse.jdt.internal.debug.ui.snippeteditor.JavaSnippetEditor" id\="org.eclipse.jdt.debug.ui.SnippetEditor" image\="$nl$/icons/full/obj16/jsbook_obj.gif" internal\="true" label\="Scrapbook" openMode\="1" open_in_place\="false" plugin\="org.eclipse.jdt.debug.ui"/>\r\n<descriptor class\="org.eclipse.ui.editors.text.TextEditor" id\="org.eclipse.ui.DefaultTextEditor" image\="$nl$/icons/full/obj16/file_obj.gif" internal\="true" label\="Text Editor" openMode\="1" open_in_place\="false" plugin\="org.eclipse.ui.editors"/>\r\n<descriptor id\="org.eclipse.ui.browser.editorSupport" image\="$nl$/icons/obj16/internal_browser.gif" internal\="false" label\="Web Browser" launcher\="org.eclipse.ui.internal.browser.BrowserLauncher" openMode\="4" open_in_place\="false" plugin\="org.eclipse.ui.browser"/>\r\n<descriptor class\="org.eclipse.pde.internal.ui.samples.SampleEditor" id\="org.eclipse.pde.ui.sampleEditor" image\="$nl$/icons/obj16/build_exec.gif" internal\="true" label\="Code Sample Editor" openMode\="1" open_in_place\="false" plugin\="org.eclipse.pde.ui"/>\r\n<descriptor class\="org.eclipse.ui.editors.text.TextEditor" id\="org.eclipse.jdt.ui.JARDescEditor" image\="$nl$/icons/full/obj16/jar_desc_obj.gif" internal\="true" label\="JAR Description Editor" openMode\="1" open_in_place\="false" plugin\="org.eclipse.jdt.ui"/>\r\n</editors>
/instance/org.eclipse.ui/showIntro=false
/instance/org.eclipse.jdt.ui/org.eclipse.jdt.ui.formatterprofiles.version=10
@org.eclipse.ui=3.2.0.I20060605-1400
\!/=
/instance/org.eclipse.ui.ide/platformState=1158059399678
/configuration/org.eclipse.ui.ide/SHOW_WORKSPACE_SELECTION_DIALOG=false
/instance/org.eclipse.jdt.core/org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
/instance/org.eclipse.jdt.core/org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
/instance/org.eclipse.core.resources/version=1
/instance/org.eclipse.jdt.core/org.eclipse.jdt.core.builder.resourceCopyExclusionFilter=*.launch
/instance/org.eclipse.ui.ide/tipsAndTricks=true
/instance/org.eclipse.jdt.core/org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
/instance/org.eclipse.jdt.ui/org.eclipse.jdt.ui.editor.tab.width=
/instance/org.eclipse.jdt.ui/proposalOrderMigrated=true
@org.eclipse.core.resources=3.2.0.v20060603
@org.eclipse.ui.workbench=3.2.0.I20060605-1400
/instance/org.eclipse.jdt.ui/useQuickDiffPrefPage=true
@org.eclipse.ui.ide=3.2.0.I20060605-1400
@org.eclipse.jdt.ui=3.2.0.v20060605-1400
/instance/org.eclipse.jdt.ui/tabWidthPropagated=true
/configuration/org.eclipse.ui.ide/RECENT_WORKSPACES_PROTOCOL=2
/configuration/org.eclipse.ui.ide/MAX_RECENT_WORKSPACES=5
/configuration/org.eclipse.ui.ide/RECENT_WORKSPACES=C\:\\qa\\eclipse\\workspace
/instance/org.eclipse.jdt.ui/fontPropagated=true
/instance/org.eclipse.jdt.core/org.eclipse.jdt.core.compiler.compliance=1.5
/instance/org.eclipse.jdt.ui/useAnnotationsPrefPage=true
/instance/org.eclipse.jdt.ui/org.eclipse.jdt.ui.javadoclocations.migrated=true
/instance/org.eclipse.jdt.core/org.eclipse.jdt.core.compiler.source=1.5
file_export_version=3.0
@org.eclipse.jdt.core=3.2.0.v_671
Comment 1 Marco Litto CLA 2006-09-12 07:29:01 EDT
Created attachment 49918 [details]
C:\qa\eclipse\hs_err_pid1020.log
Comment 2 John Arthorne CLA 2006-09-14 08:43:58 EDT
This crash occurs in the VMThread, deep in VM native code.  This is a VM bug.
Comment 3 Marco Litto CLA 2006-09-15 05:28:38 EDT
the still occurs with the newest version of sun's vm: 1.5.0_08-b03
i will report it to sun
Comment 4 Marco Litto CLA 2006-09-15 05:53:25 EDT
feedback from sun:

Your report has been assigned an internal review ID of 795099, which is NOT visible on the Sun Developer Network (SDN).
Comment 5 Marco Litto CLA 2007-02-21 10:03:50 EST
Created attachment 59478 [details]
hs_err_pid236.log
Comment 6 Marco Litto CLA 2007-02-21 10:04:24 EST
the bug still occurrs with

Eclipse
Version: 3.2.2
Build id: M20070212-1330

and

java.vm.vendor=Sun Microsystems Inc.
java.vm.version=1.6.0-b105
Comment 7 Marco Litto CLA 2007-08-07 11:55:11 EDT
the bug still occurrs with

java version "1.6.0_02"
Java(TM) SE Runtime Environment (build 1.6.0_02-b05)
Java HotSpot(TM) Client VM (build 1.6.0_02-b05, mixed mode, sharing)
and Eclipse 3.3

i have been contacted by thomas rodriguez from sun, who has been looking at the bug (thomas.rodriguez@sun.com). he is sure, that the bug is in swt and not in the JVM:


steps we followed to find the cause

1.
It's definitely some kind of C heap corruption.  The fastdebug crash is in the 
JVM malloc verification code, in the process of complaining about the heap being 
corrupted.  The product crash is from Microsofts version of this code.  I would 
like to get dumps from both crash if possible.  I think we could avoid some of 
the back and forth if I can look at the crash directly.  Also bad on the error 
log I'm guessing that the problem is bad JNI code in swt so you might try 
running with -Xcheck:jni and see what it complains about.  Thanks.

-> I sent the crash log after using -Xcheck:jni

2. 
I'm willing to bet that the code in this path:

j  org.eclipse.swt.internal.win32.OS.RegQueryValueExW(I[CI[I[C[I)I+0
j 
org.eclipse.swt.internal.win32.OS.RegQueryValueEx(ILorg/eclipse/swt/internal/win32/TCHAR;I[ILorg/eclipse/swt/inter
nal/win32/TCHAR;[I)I+45
j 
org.eclipse.swt.program.Program.getKeyValue(Ljava/lang/String;Z)Ljava/lang/String;+94
j 
org.eclipse.swt.program.Program.getProgram(Ljava/lang/String;Ljava/lang/String;)Lorg/eclipse/swt/program/Program;+
2
j 
org.eclipse.swt.program.Program.getPrograms()[Lorg/eclipse/swt/program/Program;+67
j 
org.eclipse.ui.internal.registry.EditorRegistry.getSortedEditorsFromOS()[Lorg/eclipse/ui/IEditorDescriptor;+8

is passing in wrong values for the buffer sizes so that RegQueryValueExW walks 
off the end of one of the buffers in their JNI code.  Unfortunately -Xcheck:jni 
doesn't have logic to check for this case and the SWT JNI code doesn't have any 
sanity checking.  But our malloc debugging in fastdebug does check for writing 
off the end and that's what it dies doing so I'm pretty sure this is the 
culprit.  If you ran a registry monitoring tool like process monitor from 
www.sysinternals.com you could probably figure out which registry entry is 
croaks on, since it will be the last one accessed by your progress before it dies.

Anyway this looks like an SWT problem, not a JVM problem so I think you need to 
recontact them.  I'm willing to bet it has something to do with you being in a 
different locale.  If you still want to produce those dumps I can take a quick 
look at them to confirm.

-> I sent the dump

3. 
How did you make the dump file you uploaded?  It doesn't seem to be a full dump 
so I wasn't able to look at everything I wanted to but I was able to get the 
crashing call stack.

0012e6a0 7c91e89a ntdll!KiFastSystemCallRet
0012e6a4 7c81cd96 ntdll!ZwTerminateProcess+0xc
0012e7a0 7c81cdee kernel32!_ExitProcess+0x62
0012e7b4 08325a53 kernel32!ExitProcess+0x14
0012e7c8 083259fc jvm!__crtExitProcess+0x43 
[f:\vs70builds\3077\vc\crtbld\crt\src\crt0dat.c @ 464]
0012e7f8 08325890 jvm!doexit+0x11c 
[f:\vs70builds\3077\vc\crtbld\crt\src\crt0dat.c @ 414]
0012e80c 0827052c jvm!exit+0x10 [f:\vs70builds\3077\vc\crtbld\crt\src\crt0dat.c 
@ 303]
0012e814 0830d82d jvm!os::abort+0x1c 
[c:\prtbuilddir\workspace\src\os\win32\vm\os_win32.cpp @ 812]
0012e860 080effb3 jvm!VMError::report_and_die+0x67d 
[c:\prtbuilddir\workspace\src\share\vm\utilities\vmerror.cpp @ 794]
0012e89c 0826eaa9 jvm!report_assertion_failure+0x43 
[c:\prtbuilddir\workspace\src\share\vm\utilities\debug.cpp @ 192]
0012e8e4 0826ec15 jvm!verify_block+0x99 
[c:\prtbuilddir\workspace\src\share\vm\runtime\os.cpp @ 382]
0012e8f0 0816d437 jvm!os::free+0x45 
[c:\prtbuilddir\workspace\src\share\vm\runtime\os.cpp @ 466]
0012e910 08190b54 jvm!jni_ReleaseCharArrayElements+0x237 
[c:\prtbuilddir\workspace\src\share\vm\prims\jni.cpp @ 2217]
0012e934 010ebbd3 jvm!checked_jni_ReleaseCharArrayElements+0x1c4 
[c:\prtbuilddir\workspace\src\share\vm\prims\jnicheck.cpp @ 1452]
WARNING: Stack unwind information not available. Following frames may be wrong.
0012e990 082ee407 
swt_win32_3346!Java_org_eclipse_swt_internal_win32_OS_RegQueryValueExW__I_3CI_3I_3C_3I+0xc9

It's consistent with the idea that the size reported in the lpcbData argument to 
RegQueryValueExW is bigger than the actual size of lpData so it's overwriting 
data in the C heap.  Anyway, this is an SWT problem not a JVM issue so you 
should contact them to resolve it.  It would probably be very easy for them to 
track down by adding some debugging code into 
org/eclipse/swt/internal/win32/OS.java to verify that the passed in values are 
valid.  I'll be closing the bug on our side but if you need clarification from 
me feel free to contact me.
Comment 8 Steve Northover CLA 2007-09-06 15:26:04 EDT
Ok, the Sun anaysis seems good.  Since the bug only happens on your machine, we will need you to debug it there for us.  Can you follow these instructions to get and run SWT from CVS?  (we will need you to edit the source of SWT to help us debug)

http://www.eclipse.org/swt/cvs.php

Once you have the source and can edit, try making the buffer bigger.  

1) Put a bream in org.eclipse.swt.program.Program.getKeyValue()
2) Debug Eclipse from within Eclipse
3) Does it crash the first time a value is read from the registry?
4) What is the value of "length" when it crashes?

Try printing out the successful searches to determine which key/value in the Windows registry is failing.
Comment 9 Marco Litto CLA 2007-09-07 05:22:36 EDT
i have changed the method as follows:

static String getKeyValue (String string, boolean expand) {
	/* Use the character encoding for the default locale */
	TCHAR key = new TCHAR (0, string, true);
	int /*long*/ [] phkResult = new int /*long*/ [1];
	if (OS.RegOpenKeyEx (OS.HKEY_CLASSES_ROOT, key, 0, OS.KEY_READ, phkResult) != 0) {
		return null;
	}
	String result = null;
	int [] lpcbData = new int [1];
	if (OS.RegQueryValueEx (phkResult [0], (TCHAR) null, 0, null, (TCHAR) null, lpcbData) == 0) {
		result = "";
		int length = lpcbData [0] / TCHAR.sizeof;
		System.out.println("1:"+length);
		if (length != 0) {
			/* Use the character encoding for the default locale */
			TCHAR lpData = new TCHAR (0, length);
			if (OS.RegQueryValueEx (phkResult [0], null, 0, null, lpData, lpcbData) == 0) {
				if (!OS.IsWinCE && expand) {
					length = OS.ExpandEnvironmentStrings (lpData, null, 0);
					System.out.println("2:"+length);
					if (length != 0) {
						TCHAR lpDst = new TCHAR (0, length);
						OS.ExpandEnvironmentStrings (lpData, lpDst, length);
						result = lpDst.toString (0, Math.max (0, length - 1));
					}
				} else {
					length = Math.max (0, lpData.length () - 1);
					System.out.println("3:"+length);
					result = lpData.toString (0, length);
				}
			}
		}
	}
	if (phkResult [0] != 0) OS.RegCloseKey (phkResult [0]);
	System.out.println("result:"+result);
	return result;
}

then i have made the following steps:

Steps to reproduce the crash:
- Open Window -> Preferences -> General -> Editors -> File Associations
- Select *.html
- Remove associated editor "Web Browser"
- Add internal Editor: Text Editor

after klicing Ok i got the following output into the console:

....
result:xrs
1:11
3:10
result:Zone Class
1:11
3:10
result:Zone Class
1:205
3:204
result:NV1="!!5!"Q!1!#9!,1#F!TEZ/$)Q!!!!!!$MB1%!!!!!!!!!!!!!!!!!!!!!N!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"!1%!!!!!N!!!!!!!!!.5(!A!$!!E!$Q!V!!U!:Q$``Q5!!!!!!!!!!&[]Y!!!!!!!!!!!.!!!!!!!!!!!!!!!!!!!!



Eclipse was still runing after that. then i continued with the following steps

- File -> New -> Project -> Java Project -> next

  -> VM crashed and console showed:

#
# An unexpected error has been detected by Java Runtime Environment:
#
#  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x7c9206c3, pid=5080, tid=4028
#
# Java VM: Java HotSpot(TM) Client VM (1.6.0_02-b05 mixed mode)
# Problematic frame:
# C  [ntdll.dll+0x106c3]
#
# An error report file with more information is saved as hs_err_pid5080.log
#
# If you would like to submit a bug report, please visit:
#   http://java.sun.com/webapps/bugreport/crash.jsp
#
Comment 10 Aaron Powers CLA 2007-09-11 11:41:16 EDT
I have been able to replicate this bug also. I'm also running under Windows XP, with Eclipse Version: 3.3.0 Build id: I20070621-1340

If Marco's information wasn't enough to replicate this or track this down, ask me and I'll be glad to reproduce it and get additional logs.

As an aside, a co-worker of mine was complaining about this bug before. He was a newbie to Eclipse and trying to set up an external editor because he was very attached to the external editor... And so as his first experience with Eclipse, he gave up on using it, too easily I think :(

Comment 11 Steve Northover CLA 2007-09-11 12:26:46 EDT
Ok, add an "if" statement to the bottom of this method that checks for "result.equals("Zone Class") and prints some message.  

	if ("Zone Class".equals(result)) {
		System.out.println("BAD");
	}

Set a break point on that line and once the break is hit, step until you hit the crash.  Do it again and tell me what the arguments are.

BTW, the string "result:NV1..." looks like total garbage.  It's possible that the memory corruption happened before because a buffer was too small.
Comment 12 Marco Litto CLA 2007-09-11 15:57:26 EDT
I don't think that it has to do with memory corruption when the result ist 
NV1="!!5!"Q!1!#9!,1#F!TEZ ....

when searching the string "NV1=" in regedit i find a corresponding entry in HKEY_CLASSES_ROOT. I am sure, that my registry is corrupted here and that this is the reason, why the crash happens only on a few machines

Stepping from the propsed break point to the crash is not trivial, since it occurrs in a later action

i'll try to localize it. 
Comment 13 Marco Litto CLA 2007-09-12 07:12:36 EDT
Created attachment 78166 [details]
reg-file with corrupted registry key
Comment 14 Marco Litto CLA 2007-09-12 07:17:30 EDT
We tried to reproduce the bug on another machine by exporting the corrupted key with regedit (-> see attachment) and then importing it into the registry of another machine. 
we copied my eclipse to the other machine as well an ran the test. the console output for the key was the same:

1:205
3:204
result:NV1="!!5!"Q!1!#9!,1#F!TEZ/$)Q!!!!!!$MB1%!!!!!!!!!!!!!!!!!!!!!N!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"!1%!!!!!N!!!!!!!!!.5(!A!$!!E!$Q!V!!U!:Q$``Q5!!!!!!!!!!&[]Y!!!!!!!!!!!.!!!!!!!!!!!!!!!!!!!!

but then we unfortunately were not able to reproduce the crash on that machine!

I don't think that stepping through the code to the next call that crashes will help us realy because the crash is not realy deterministic. Sometimes ist crashes immediately, mostly after the step - File -> New -> Project -> Java Project -> next

In Comment #7 tom rodriguez propsed:

It would probably be very easy for them to track down by adding some debugging code into org/eclipse/swt/internal/win32/OS.java to verify that the passed in values are 
valid.

Can you help my with check-code for that class?
Comment 15 Steve Northover CLA 2007-09-13 01:56:33 EDT
Not really.  Stepping up to the crash should show when the parameters are bad, just before the call.
Comment 16 Marco Litto CLA 2007-09-13 04:30:59 EDT
As I have mentioned before, the crash does not occurr deterministically.

E.G.

1. Try: After changing the file association I start the action
File -> New -> Project -> Java Project (a breakpoint ist to
org.eclipse.ui.actions.NewWizardAction.run()) and then step through the code.
It crashes in a method, that i did not step into.

2. Try: After changing the file association I start the action
File -> New and it crashes

3. Try: After changing the file association I start the action
File -> New -> Project -> Java Project and create a project. It crashes sometimes later

...

Steve, I think by looking at the crash call, you are looking at the symptom, not the cause!. In my opinion the heap is already corrupted when we see the odd registry result. So again I think that the only way to localize the heap corruption is more checking in OS.java

Comment 17 Jay Goldman CLA 2008-11-13 13:00:21 EST
I am also experiencing a crash when i try to use an external program. 
I also have a problem just adding a file association when using eclipse 3.4.1.

I don't have a problem adding a file association when using eclipse 3.3.2 but when i use eclipse 3.4 (i downloaded the latest 3.4.1 today to make sure i had a good install) the crash happens. 

For either version, when i try to add an associated editor if i click the 'external programs' button eclipse crashes. It also crashes if i select an internal editor and click 'ok'.

I have no idea if i have any corrupt registry entries. 

I am using the 1.6.10 jdk - but the problem happens on other 1.6 updates and with 1.5.12.

I have attached a crash from 3.3.2.
Comment 18 Jay Goldman CLA 2008-11-13 13:01:42 EST
Created attachment 117803 [details]
crash when adding a file editor to a file association
Comment 19 Jay Goldman CLA 2008-11-13 13:03:26 EST
Created attachment 117805 [details]
eclipse 3.4.1 crash when adding file association
Comment 20 Tom Hofmann CLA 2008-12-17 10:33:36 EST
dup of bug 129469?
Comment 21 Niraj Modi CLA 2014-06-24 01:24:51 EDT
*** Bug 436355 has been marked as a duplicate of this bug. ***
Comment 22 Alexander Malic CLA 2015-12-19 18:09:22 EST
Still exists in Mars
Comment 23 Niraj Modi CLA 2016-05-23 03:18:27 EDT
*** Bug 494261 has been marked as a duplicate of this bug. ***
Comment 24 Eike Stepper CLA 2016-08-30 01:45:58 EDT
Ten years later I can still reproduce this JVM crash in Neon. Is somebody still thinking about it?
Comment 25 Andrey Loskutov CLA 2016-08-30 02:10:03 EDT
(In reply to Eike Stepper from comment #24)
> Ten years later I can still reproduce this JVM crash in Neon. Is somebody
> still thinking about it?

Please attach the crash log, steps to reproduce and your configuration details.
Comment 26 Eike Stepper CLA 2016-08-30 04:51:36 EDT
(In reply to Andrey Loskutov - on the beach till 12.09 from comment #25)
> Please attach the crash log, steps to reproduce and your configuration
> details.

Please see https://bugs.eclipse.org/bugs/show_bug.cgi?id=494261#c0
Comment 27 Eike Stepper CLA 2016-08-30 04:57:19 EDT
(In reply to Eike Stepper from comment #26)
> (In reply to Andrey Loskutov - on the beach till 12.09 from comment #25)
> > Please attach the crash log, steps to reproduce and your configuration
> > details.
> 
> Please see https://bugs.eclipse.org/bugs/show_bug.cgi?id=494261#c0

https://bugs.eclipse.org/bugs/show_bug.cgi?id=494261#c9 is probably also interesting!
Comment 28 Eike Stepper CLA 2016-10-19 11:37:30 EDT
Hi Andrey, did we provide enough information for you or some other SWT expert to fix this dangerous and annoying bug now?
Comment 29 Eike Stepper CLA 2016-10-19 11:41:03 EDT
I increase the severity to critical because an IDE is much about editing artifacts - with the right editors of course. Not being able to configure these file associations is at least critical.
Comment 30 Andrey Loskutov CLA 2016-10-19 11:42:58 EDT
(In reply to Eike Stepper from comment #28)
> Hi Andrey, did we provide enough information for you or some other SWT
> expert to fix this dangerous and annoying bug now?

I'm sorry, I do not have any real idea what is going wrong, and also because this happens not on Linux, I can't invest more time to work on this.
Comment 31 Takuma Tsutsumi CLA 2017-03-07 22:22:22 EST
Created attachment 267163 [details]
Fix buffer overflow bug on SWT-Win32

I provide an additional information to resolve this issue.

Testing environment:

- Windows 10 64bit
- Eclipse Neon Update 2 x64 and x86
- Oracle JRE 1.8.0_121 x64 and x86

Steps to reproduce:

1. Add Windows registry entry for test.
  - reg add HKCU\SOFTWARE\Classes\1 /d TEST
2. Run Registry Editor (regedit).
  - Open the following key: HKEY_CURRENT_USER\SOFTWARE\Classes\1
  - Select (Default) value and open "Edit Binary Value" dialog.
  - Change the value to following:
    0x54004500530054000000 (10 bytes) -> 0x540045005300540000 (9 bytes)
3. Run Eclipse from a new explorer.
    Note: Should not be launched from a third-party launcher because registry may not be reloaded.
  - Open Window -> Preferences -> General -> Editors -> File Associations
  - Apply any changes.
  - VM crashes. If does not crash, repeat from #3.

Analysis:

This problem occurs when the size of a REG_SZ entry in HKEY_CLASSES_ROOT will not multiple of a Unicode byte length.

The REG_SZ entry in Windows registry may not have been stored with the proper terminating null characters.
  ex.1) non null terminated
  ex.2) single byte null terminated (Unicode)
Please see following:
  - https://msdn.microsoft.com/en-us/library/windows/desktop/ms724884(v=vs.85).aspx
  - https://msdn.microsoft.com/en-us/library/windows/desktop/ms724911(v=vs.85).aspx

Workaround:

If the size of a REG_SZ entry is not multiple of a Unicode byte length, increase the buffer size.
Please see attached patch file.
Comment 32 Lakshmi P Shanmugam CLA 2017-03-07 23:46:05 EST
Niraj, can you please investigate this?
Comment 33 Niraj Modi CLA 2017-03-10 02:56:19 EST
(In reply to Takuma Tsutsumi from comment #31)
> Created attachment 267163 [details]
> Fix buffer overflow bug on SWT-Win32
> 
> I provide an additional information to resolve this issue.
> 
> Testing environment:
> 
> - Windows 10 64bit
> - Eclipse Neon Update 2 x64 and x86
> - Oracle JRE 1.8.0_121 x64 and x86
> 
> Steps to reproduce:
> 
> 1. Add Windows registry entry for test.
>   - reg add HKCU\SOFTWARE\Classes\1 /d TEST
> 2. Run Registry Editor (regedit).
>   - Open the following key: HKEY_CURRENT_USER\SOFTWARE\Classes\1
>   - Select (Default) value and open "Edit Binary Value" dialog.
>   - Change the value to following:
>     0x54004500530054000000 (10 bytes) -> 0x540045005300540000 (9 bytes)
> 3. Run Eclipse from a new explorer.
>     Note: Should not be launched from a third-party launcher because
> registry may not be reloaded.
>   - Open Window -> Preferences -> General -> Editors -> File Associations
>   - Apply any changes.
>   - VM crashes. If does not crash, repeat from #3.
Able to reproduce this crash on Win7 with above steps.
Note, regarding Step 3, I don't see the crash every-time.
If I add a new file association and save it doesn't crash. But if I remove the entry added by me, I can see the crash.

> Analysis:
> 
> This problem occurs when the size of a REG_SZ entry in HKEY_CLASSES_ROOT
> will not multiple of a Unicode byte length.
> 
> The REG_SZ entry in Windows registry may not have been stored with the
> proper terminating null characters.
>   ex.1) non null terminated
>   ex.2) single byte null terminated (Unicode)
> Please see following:
>   -
> https://msdn.microsoft.com/en-us/library/windows/desktop/ms724884(v=vs.85).
> aspx
>   -
> https://msdn.microsoft.com/en-us/library/windows/desktop/ms724911(v=vs.85).
> aspx
> 
> Workaround:
> 
> If the size of a REG_SZ entry is not multiple of a Unicode byte length,
> increase the buffer size.
> Please see attached patch file.
Thanks for this analysis, I confirm above approach works.

Apart from Program#getKeyValue(), Program#findProgram() method also needs to be fixed for proper TCHAR buffer size, will create a final patch based on this approach.
Comment 34 Eclipse Genie CLA 2017-03-14 04:48:25 EDT
New Gerrit change created: https://git.eclipse.org/r/92990
Comment 36 Niraj Modi CLA 2017-03-20 02:58:25 EDT
Tested the fix with scenario in comment 31, on Win7 using Eclipse I-Build: I20170315-2000

Resoling now.
Comment 37 Niraj Modi CLA 2017-05-10 02:59:59 EDT
Verified fix on Win7 with Build id: I20170508-2000