Community
Participate
Working Groups
When I'm trying to save a file sometimes I receive this error "Save failed:null". I'm using Eclipse 2.1 RC2 GTK version on Redhat Linux 8.0. This is a snippet from .log in .metadata folder: !SESSION Mar 14, 2003 10:58:13.595 --------------------------------------------- java.version=1.4.0_02 java.vendor=Sun Microsystems Inc. BootLoader constants: OS=linux, ARCH=x86, WS=gtk, NL=en_US Command-line arguments: -os linux -ws gtk -arch x86 -install file:/home/adi/apps/eclipse-RC2/ !ENTRY org.eclipse.ui 4 4 Mar 14, 2003 10:58:13.597 !MESSAGE Save Failed !ENTRY org.eclipse.ui 2 0 Mar 14, 2003 10:58:13.599 !MESSAGE Save Failed !STACK 0 java.lang.NegativeArraySizeException at org.eclipse.jdt.internal.compiler.parser.Scanner.checkTaskTag(Scanner.java:284) at org.eclipse.jdt.internal.compiler.parser.Parser.checkAndReportBracketAnomalies(Parser.java:869) at org.eclipse.jdt.internal.compiler.parser.Parser.reportSyntaxError(Parser.java:7482) at org.eclipse.jdt.internal.compiler.SourceElementParser.reportSyntaxError(SourceElementParser.java:1254) at org.eclipse.jdt.internal.compiler.parser.Parser.parse(Parser.java:6850) at org.eclipse.jdt.internal.compiler.parser.Parser.parse(Parser.java:7116) at org.eclipse.jdt.internal.compiler.SourceElementParser.parseCompilationUnit(SourceElementParser.java:1051) at org.eclipse.jdt.internal.core.CompilationUnit.generateInfos(CompilationUnit.java:313) at org.eclipse.jdt.internal.core.CompilationUnit.buildStructure(CompilationUnit.java:77) at org.eclipse.jdt.internal.core.CompilationUnit.makeConsistent(CompilationUnit.java:636) at org.eclipse.jdt.internal.core.WorkingCopy.makeConsistent(WorkingCopy.java:340) at org.eclipse.jdt.internal.core.ReconcileWorkingCopyOperation.executeOperation(ReconcileWorkingCopyOperation.java:48) at org.eclipse.jdt.internal.core.JavaModelOperation.execute(JavaModelOperation.java:365) at org.eclipse.jdt.internal.core.JavaModelOperation.run(JavaModelOperation.java:681) at org.eclipse.jdt.internal.core.JavaElement.runOperation(JavaElement.java:540) at org.eclipse.jdt.internal.core.WorkingCopy.reconcile(WorkingCopy.java:438) at org.eclipse.jdt.internal.core.WorkingCopy.reconcile(WorkingCopy.java:429) at org.eclipse.jdt.internal.ui.javaeditor.CompilationUnitDocumentProvider.doSaveDocument(CompilationUnitDocumentProvider.java:906) at org.eclipse.ui.texteditor.AbstractDocumentProvider.saveDocument(AbstractDocumentProvider.java:455) at org.eclipse.ui.texteditor.AbstractTextEditor$11.execute(AbstractTextEditor.java:2906) at org.eclipse.ui.actions.WorkspaceModifyOperation$1.run(WorkspaceModifyOperation.java:65) at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:1591) at org.eclipse.ui.actions.WorkspaceModifyOperation.run(WorkspaceModifyOperation.java:79) at org.eclipse.ui.texteditor.AbstractTextEditor.performSaveOperation(AbstractTextEditor.java:2926) at org.eclipse.jdt.internal.ui.javaeditor.CompilationUnitEditor.performSaveOperation(CompilationUnitEditor.java:742) at org.eclipse.jdt.internal.ui.javaeditor.CompilationUnitEditor.doSave(CompilationUnitEditor.java:806) at org.eclipse.ui.internal.EditorManager$11.run(EditorManager.java:1083) at org.eclipse.ui.internal.EditorManager$8.run(EditorManager.java:954) at org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:296) at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:246) at org.eclipse.jface.window.ApplicationWindow$1.run(ApplicationWindow.java:431) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:65) at org.eclipse.jface.window.ApplicationWindow.run(ApplicationWindow.java:428) at org.eclipse.ui.internal.WorkbenchWindow.run(WorkbenchWindow.java:1385) at org.eclipse.ui.internal.EditorManager.runProgressMonitorOperation(EditorManager.java:960) at org.eclipse.ui.internal.EditorManager.savePart(EditorManager.java:1088) at org.eclipse.ui.internal.WorkbenchPage.savePart(WorkbenchPage.java:2350) at org.eclipse.ui.internal.WorkbenchPage.saveEditor(WorkbenchPage.java:2362) at org.eclipse.ui.internal.SaveAction.run(SaveAction.java:57) at org.eclipse.jface.action.Action.runWithEvent(Action.java:842) at org.eclipse.ui.internal.WWinKeyBindingService.pressed(WWinKeyBindingService.java:214) at org.eclipse.ui.internal.WWinKeyBindingService$5.widgetSelected(WWinKeyBindingService.java:328) at org.eclipse.ui.internal.AcceleratorMenu$2.handleEvent(AcceleratorMenu.java:55) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:77) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:902) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:1590) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:1383) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1400) at org.eclipse.ui.internal.Workbench.run(Workbench.java:1383) at org.eclipse.core.internal.boot.InternalBootLoader.run(InternalBootLoader.java:845) at org.eclipse.core.boot.BootLoader.run(BootLoader.java:461) 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. at org.eclipse.core.launcher.Main.basicRun(Main.java:247) at org.eclipse.core.launcher.Main.run(Main.java:703) at org.eclipse.core.launcher.Main.main(Main.java:539) java:324)
Could you attach the source of the unit which fails to save ? The bug seems located in the scanner, when attempting to discover some TODO tasks.
Actually, was able to reproduce on last TODO task (immediately followed by a EOF) public class X { }//TODO
Created attachment 4259 [details] Patch for Scanner would also need to be applied to public scanner class
Fix is available and is quite simple.
Not really critical.
Created attachment 4286 [details] Patch for the Public scanner class Identical patch for the public scanner class.
Adrian - do you confirm my testcase is what you also had ?
I guess so. Is it fix in the latest version of eclipse(RC3b)?
No, the patch is not included in the latest integration build.
Given we are really close to the 2.1 release, this fix will not make it into this release, unless it would be a stop ship issue (which it doesn't qualify for). It is likely going to be released just after 2.1, and should be part of any patch past it.
Defer
Reopening
Fixed
Backported to 2.1 maintenance stream.
Fixed in 2.2 stream as well.
Verified.
Verified. for 3.0M1.