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

Bug 291704

Summary: Exception when commenting last line of java file
Product: [Eclipse Project] JDT Reporter: Andrew Eisenberg <andrew.eisenberg>
Component: TextAssignee: JDT-Text-Inbox <jdt-text-inbox>
Status: CLOSED DUPLICATE QA Contact:
Severity: normal    
Priority: P3 CC: markus.kell.r
Version: 3.5   
Target Milestone: ---   
Hardware: All   
OS: All   
Whiteboard:

Description Andrew Eisenberg CLA 2009-10-07 23:05:33 EDT
Start with this simple Java class.  Toggle a comment (Ctrl-/) on the final line and the following exception is thrown.

class F {

}

@SuppressWarnings("unchecked"){code}


org.eclipse.jface.text.BadLocationException
	at org.eclipse.jface.text.TreeLineTracker.fail(TreeLineTracker.java:1061)
	at org.eclipse.jface.text.TreeLineTracker.offsetByLine(TreeLineTracker.java:340)
	at org.eclipse.jface.text.TreeLineTracker.getLineOffset(TreeLineTracker.java:1128)
	at org.eclipse.jface.text.AbstractLineTracker.getLineOffset(AbstractLineTracker.java:169)
	at org.eclipse.jface.text.AbstractDocument.getLineOffset(AbstractDocument.java:888)
	at org.eclipse.core.internal.filebuffers.SynchronizableDocument.getLineOffset(SynchronizableDocument.java:383)
	at org.eclipse.jdt.internal.ui.javaeditor.ToggleCommentAction.getFirstCompleteLineOfRegion(ToggleCommentAction.java:204)
	at org.eclipse.jdt.internal.ui.javaeditor.ToggleCommentAction.isSelectionCommented(ToggleCommentAction.java:136)
	at org.eclipse.jdt.internal.ui.javaeditor.ToggleCommentAction.run(ToggleCommentAction.java:88)
	at org.eclipse.jface.action.Action.runWithEvent(Action.java:498)
	at org.eclipse.ui.commands.ActionHandler.execute(ActionHandler.java:185)
	at org.eclipse.ui.internal.handlers.LegacyHandlerWrapper.execute(LegacyHandlerWrapper.java:109)
	at org.eclipse.core.commands.Command.executeWithChecks(Command.java:476)
	at org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(ParameterizedCommand.java:508)
	at org.eclipse.ui.internal.handlers.HandlerService.executeCommand(HandlerService.java:169)
	at org.eclipse.ui.internal.keys.WorkbenchKeyboard.executeCommand(WorkbenchKeyboard.java:470)
	at org.eclipse.ui.internal.keys.WorkbenchKeyboard.press(WorkbenchKeyboard.java:824)
	at org.eclipse.ui.internal.keys.WorkbenchKeyboard.processKeyEvent(WorkbenchKeyboard.java:880)
	at org.eclipse.ui.internal.keys.WorkbenchKeyboard.filterKeySequenceBindings(WorkbenchKeyboard.java:569)
	at org.eclipse.ui.internal.keys.WorkbenchKeyboard.access$3(WorkbenchKeyboard.java:510)
	at org.eclipse.ui.internal.keys.WorkbenchKeyboard$KeyDownFilter.handleEvent(WorkbenchKeyboard.java:125)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
	at org.eclipse.swt.widgets.Display.filterEvent(Display.java:965)
	at org.eclipse.swt.widgets.Display.sendEvent(Display.java:3542)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1250)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1273)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1258)
	at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1287)
	at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1283)
	at org.eclipse.swt.widgets.Canvas.sendKeyEvent(Canvas.java:433)
	at org.eclipse.swt.widgets.Control.doCommandBySelector(Control.java:906)
	at org.eclipse.swt.widgets.Display.windowProc(Display.java:4741)
	at org.eclipse.swt.internal.cocoa.OS.objc_msgSend(Native Method)
	at org.eclipse.swt.internal.cocoa.NSResponder.interpretKeyEvents(NSResponder.java:56)
	at org.eclipse.swt.widgets.Composite.keyDown(Composite.java:516)
	at org.eclipse.swt.widgets.Display.windowProc(Display.java:4655)
	at org.eclipse.swt.internal.cocoa.OS.objc_msgSendSuper(Native Method)
	at org.eclipse.swt.widgets.Widget.callSuper(Widget.java:202)
	at org.eclipse.swt.widgets.Widget.windowSendEvent(Widget.java:1753)
	at org.eclipse.swt.widgets.Shell.windowSendEvent(Shell.java:1825)
	at org.eclipse.swt.widgets.Display.windowProc(Display.java:4713)
	at org.eclipse.swt.internal.cocoa.OS.objc_msgSendSuper(Native Method)
	at org.eclipse.swt.widgets.Display.applicationSendEvent(Display.java:4285)
	at org.eclipse.swt.widgets.Display.applicationProc(Display.java:4352)
	at org.eclipse.swt.internal.cocoa.OS.objc_msgSend(Native Method)
	at org.eclipse.swt.internal.cocoa.NSApplication.sendEvent(NSApplication.java:101)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3097)
	at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2405)
	at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2369)
	at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2221)
	at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:500)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:493)
	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:194)
	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:368)
	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:559)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:514)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1311)
	at org.eclipse.equinox.launcher.Main.main(Main.java:1287)
Comment 1 Markus Keller CLA 2009-10-08 10:25:21 EDT
Also happens in I20091006-0800 on WinXP.

*** This bug has been marked as a duplicate of bug 251741 ***