Community
Participate
Working Groups
Build Identifier: I20101028-1441 When making changes in compare editor to a PHP file, typed characters will appear, but eclipse doesn't report that the file has unsaved changes - e.g. File>Save command is unavailable, Ctrl+S does nothing - no star before file name in editor's tab If I close the editor, the changes are lost without warning. The context (right-click) menu offers a weird option called "action.save.label", probably at position where "Save" command usually resides. Other compare editors (eg. plain text) work as expected. This error appears in error log as soon as I start typing: Message: Problems occurred when invoking code from plug-in: "org.eclipse.compare". java.lang.ClassCastException: org.eclipse.php.internal.ui.compare.PhpMergeViewer cannot be cast to org.eclipse.compare.contentmergeviewer.ContentMergeViewer at org.eclipse.compare.CompareEditorInput.setDirty(CompareEditorInput.java:1105) at org.eclipse.compare.CompareEditorInput.access$1(CompareEditorInput.java:1102) at org.eclipse.compare.CompareEditorInput$1.propertyChange(CompareEditorInput.java:261) at org.eclipse.compare.internal.Utilities$2.run(Utilities.java:160) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) at org.eclipse.compare.internal.Utilities$1.run(Utilities.java:158) at org.eclipse.compare.internal.Utilities.firePropertyChange(Utilities.java:173) at org.eclipse.compare.internal.Utilities.firePropertyChange(Utilities.java:145) at org.eclipse.php.internal.ui.compare.ContentMergeViewer.fireDirtyState(ContentMergeViewer.java:1206) at org.eclipse.php.internal.ui.compare.ContentMergeViewer.setLeftDirty(ContentMergeViewer.java:1225) at org.eclipse.php.internal.ui.compare.TextMergeViewer.documentChanged(TextMergeViewer.java:2684) at org.eclipse.php.internal.ui.compare.TextMergeViewer.access$14(TextMergeViewer.java:2679) at org.eclipse.php.internal.ui.compare.TextMergeViewer$ContributorInfo.documentChanged(TextMergeViewer.java:1010) at org.eclipse.wst.sse.core.internal.text.BasicStructuredDocument._fireDocumentChanged(BasicStructuredDocument.java:460) at org.eclipse.wst.sse.core.internal.text.BasicStructuredDocument.fireStructuredDocumentEvent(BasicStructuredDocument.java:1184) at org.eclipse.wst.sse.core.internal.text.BasicStructuredDocument.internalReplaceText(BasicStructuredDocument.java:1964) at org.eclipse.wst.sse.core.internal.text.BasicStructuredDocument.replaceText(BasicStructuredDocument.java:2419) at org.eclipse.wst.sse.core.internal.text.BasicStructuredDocument.replaceText(BasicStructuredDocument.java:2404) at org.eclipse.wst.sse.core.internal.text.JobSafeStructuredDocument.replaceText(JobSafeStructuredDocument.java:135) at org.eclipse.wst.sse.core.internal.text.BasicStructuredDocument.replace(BasicStructuredDocument.java:2364) at org.eclipse.wst.sse.core.internal.text.JobSafeStructuredDocument.replace(JobSafeStructuredDocument.java:98) at org.eclipse.jface.text.DefaultDocumentAdapter.replaceTextRange(DefaultDocumentAdapter.java:248) at org.eclipse.swt.custom.StyledText.modifyContent(StyledText.java:7172) at org.eclipse.swt.custom.StyledText.sendKeyEvent(StyledText.java:7986) at org.eclipse.swt.custom.StyledText.doContent(StyledText.java:2458) at org.eclipse.swt.custom.StyledText.handleKey(StyledText.java:5932) at org.eclipse.swt.custom.StyledText.handleKeyDown(StyledText.java:5962) at org.eclipse.swt.custom.StyledText$7.handleEvent(StyledText.java:5656) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1077) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1062) at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1103) at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1099) at org.eclipse.swt.widgets.Widget.wmChar(Widget.java:1508) at org.eclipse.swt.widgets.Control.WM_CHAR(Control.java:4273) at org.eclipse.swt.widgets.Canvas.WM_CHAR(Canvas.java:345) at org.eclipse.swt.widgets.Control.windowProc(Control.java:4165) at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:341) at org.eclipse.swt.widgets.Display.windowProc(Display.java:4891) at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method) at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:2460) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3673) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2629) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2593) at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2427) at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:670) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:663) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:115) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196) 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:369) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:621) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:576) at org.eclipse.equinox.launcher.Main.run(Main.java:1409) Reproducible: Always Steps to Reproduce: I. open a php file in compare editor, for example 1. checkout a php file from svn repository 2. do a few changes 3. rightclick the file in navigator and select Compare with... Base revision II. start typing in left pane (local version)
I can save the change but there is no "*" sign.
I just noticed this after switching from PDT2 to PDT3 (the 20110516 milestone). It seems that for every fixed bug in PDT a new one appears elsewhere.
fixed in head
Verified. Closing...
This bug still exists. To reproduce: Select 2 directories in Navigator. In my case they are in two separate projects. Right click any of the two directories, compare to, each other, select a file in the list of files that appear in the compare editor and push a change from one side to the other, then select a different file in the list. I'm experiencing exactly what is described here: http://www.eclipse.org/forums/index.php/t/224525/ Note that post links to this bug. I'm using build N201202161551 from Hudson, and I'm currently seeing the changed file go "dirty", making control-s/save available, but no files are ever saved. With PDT that comes with Indigo, which is very old, the file never goes dirty, nor does the option to save ever come up, despite a change being pushed from one side of the compare editor to the other. I've reproduced this in both Linux with OpenJDK and Sun JDK, as well as in Windows 7. Both Sun JDKs were 1.7_03. On Linux it was x86_64 and on windows it was 32 bit. Please re-open this bug.
hi, You can reopen this bug if you confirm it really can be reproduced,so that we can fix it later.
I see no option to "reopen" this bug anywhere in bugzilla, which is why I suggested you do so. In fact, eclipse.org's bugzilla's been rather buggy lately. It would not let me log in with credentials I knew to work, and when I tried resetting my password, that did not work either. I showed how to reproduce the bug in my report. Since there is no interface option in bugzilla that allows me to reopen the bug, can you please do it?
reopened as Daniel suggested.
I can confirm this bug. It only appears if you select 2 directories to compare each other. If you select 2 files it seems to work properly.
I think bug 366275 is a duplicate of this. https://bugs.eclipse.org/bugs/show_bug.cgi?id=366275 This bug is really annoying to keep syncronized multiple large projects.
I have been using PDT 3 with no problems on the compare function (as is mentioned on the related bug) until today and now I am encountering this issue whenever I try to compare and save code across projects. It's an incredibly frustrating bug which will really affect productivity for a lot of people. Is there some way to give this issue a bump to a higher priority to get fixed?
Just as an addition to my previous comment I know the issue was raised saying Windows XP - I'm on Windows 7 so its across multiple versions of the OS and not just an XP thing.
The bug 366275 is fixed - maybe this one too. But the latests build is from 2012-04-29 (https://hudson.eclipse.org/hudson/job/cbi-pdt-3.0-indigo/), waiting for new build.
Any idea when we might see a new build - the last one still shows the 29th of April (which on the related bug you mentioned the comments seem to indicate the latest build does not contain that fix). Thanks.
IMO the problem is caused by an API break in the platform / compare code. See also https://bugs.eclipse.org/bugs/show_bug.cgi?id=383893.
*** This bug has been marked as a duplicate of bug 383893 ***