Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 254558

Summary: WordMergeViewer.openComparison threw CoreException: " Invalid property name: Close."
Product: [Eclipse Project] Platform Reporter: Simon Archer <sja.eclipse>
Component: CompareAssignee: Michael Valenta <Michael.Valenta>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: P3 CC: kazm, Michael.Valenta
Version: 3.5   
Target Milestone: 3.5 M4   
Hardware: PC   
OS: Windows XP   
Whiteboard:

Description Simon Archer CLA 2008-11-07 00:06:40 EST
Using Eclipse 3.5M3

!ENTRY org.eclipse.compare.win32 4 0 2008-11-06 23:57:06.250
!MESSAGE Internal error
!STACK 1
org.eclipse.core.runtime.CoreException: Invalid property name: Close.
	at org.eclipse.compare.internal.win32.WordMergeViewer.openComparison(WordMergeViewer.java:340)
	at org.eclipse.compare.internal.win32.WordMergeViewer.setInput(WordMergeViewer.java:371)
	at org.eclipse.compare.CompareViewerSwitchingPane.setInput(CompareViewerSwitchingPane.java:256)
	at org.eclipse.compare.CompareEditorInput.internalSetContentPaneInput(CompareEditorInput.java:791)
	at org.eclipse.compare.CompareEditorInput.access$7(CompareEditorInput.java:789)
	at org.eclipse.compare.CompareEditorInput$13.run(CompareEditorInput.java:729)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
	at org.eclipse.compare.CompareEditorInput.feed1(CompareEditorInput.java:723)
	at org.eclipse.compare.CompareEditorInput.feedInput(CompareEditorInput.java:701)
	at org.eclipse.compare.CompareEditorInput.createContents(CompareEditorInput.java:524)
	at org.eclipse.compare.internal.CompareEditor.createCompareControl(CompareEditor.java:443)
	at org.eclipse.compare.internal.CompareEditor.access$6(CompareEditor.java:412)
	at org.eclipse.compare.internal.CompareEditor$3.run(CompareEditor.java:368)
	at org.eclipse.ui.internal.UILockListener.doPendingWork(UILockListener.java:155)
	at org.eclipse.ui.internal.UISynchronizer$3.run(UISynchronizer.java:158)
	at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
	at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:133)
	at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3825)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3449)
	at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2382)
	at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2346)
	at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2198)
	at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:493)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:333)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:488)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:113)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:193)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:370)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:585)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:549)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:504)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1236)
Caused by: org.eclipse.swt.SWTException: Invalid property name: Close.
	at org.eclipse.compare.internal.win32.WordComparison.property(WordComparison.java:109)
	at org.eclipse.compare.internal.win32.WordComparison.invoke(WordComparison.java:48)
	at org.eclipse.compare.internal.win32.WordComparison.closeDocument(WordComparison.java:182)
	at org.eclipse.compare.internal.win32.WordComparison.createWorkingCopy(WordComparison.java:170)
	at org.eclipse.compare.internal.win32.WordMergeViewer.openComparison(WordMergeViewer.java:326)
	... 38 more
Comment 1 Michael Valenta CLA 2008-11-07 07:39:19 EST
It looks like an OLE property is missing. What version of word do you have installed on your machine?
Comment 2 Simon Archer CLA 2008-11-07 08:38:47 EST
The version I have is:
  Microsoft Office Word 2007 (12.0.6311.5000) SP1 MSO (12.0.6320.5000)
Comment 3 Michael Valenta CLA 2008-11-07 08:59:04 EST
I don;t have Word 2007 but the spec for Word 2007 says that Close is still a supported method so perhaps there is something else happening. Can you provide the set of steps you took to get the error? Did you close any windows manually?
Comment 4 Simon Archer CLA 2008-11-07 09:41:53 EST
Steps:

1. Using Word 2007, create a .doc file and store it in CVS.
2. Using Word 2007, edit the .doc file.
3. Ensure that the file in Eclipse is refreshed.
4. Select the file and choose Compare With > Latest From HEAD.

The compare editor fails during the open operation.
Comment 5 Michael Valenta CLA 2008-12-08 09:46:48 EST
I still haven't had an opportunity to try and reproduce this but it looks like the exception that was thrown on the close is masking another exception. I have modified the close to log the exception and continue and thus allow the original exception to make it through.
Comment 6 Michael Valenta CLA 2008-12-08 09:47:09 EST
I'm marking this as FIXED since the exception on Close can no longer occur (and we want to record that the bug was address in 3.5 M4). 
Comment 7 Simon Archer CLA 2008-12-08 09:57:48 EST
I'll be sure to try this in the next milestone.
Comment 8 Krzysztof Kazmierczyk CLA 2010-09-29 08:55:45 EDT
this bug is a duplicate of bug 311011.