Bug 48852 Found the followng exception in the log
I20031216 java.lang.IllegalArgumentException: at org.eclipse.core.internal.runtime.Assert.isLegal(Assert.java:56) at org.eclipse.core.internal.runtime.Assert.isLegal(Assert.java:41) at org.eclipse.core.runtime.Status.setMessage(Status.java:156) at org.eclipse.core.runtime.Status.<init>(Status.java:75) at org.eclipse.ui.editors.text.TextFileDocumentProvider.executeOperation (TextFileDocumentProvider.java:396) at org.eclipse.ui.editors.text.TextFileDocumentProvider.validateState (TextFileDocumentProvider.java:812) at org.eclipse.ui.texteditor.AbstractTextEditor.validateState (AbstractTextEditor.java:3035) at org.eclipse.ui.texteditor.AbstractTextEditor$16.run (AbstractTextEditor.java:3080) at org.eclipse.swt.custom.BusyIndicator.showWhile (BusyIndicator.java:84) at org.eclipse.ui.texteditor.AbstractTextEditor.validateEditorInputState (AbstractTextEditor.java:3075) at org.eclipse.ui.texteditor.AbstractTextEditor$ElementStateListener$Validator.ver ifyText(AbstractTextEditor.java:212) at org.eclipse.swt.widgets.TypedListener.handleEvent (TypedListener.java:193) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:82) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:847) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:871) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:856) at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:664) at org.eclipse.swt.custom.StyledText.modifyContent (StyledText.java:5947) at org.eclipse.swt.custom.StyledText.sendKeyEvent(StyledText.java:6931) at org.eclipse.swt.custom.StyledText.doContent(StyledText.java:2554) at org.eclipse.swt.custom.StyledText.handleKey(StyledText.java:5300) at org.eclipse.swt.custom.StyledText.handleKeyDown (StyledText.java:5323) at org.eclipse.swt.custom.StyledText$8.handleEvent (StyledText.java:5070) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:82) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:847) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:871) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:856) at org.eclipse.swt.widgets.Control.sendKeyEvent(Control.java:1716) at org.eclipse.swt.widgets.Control.sendKeyEvent(Control.java:1712) at org.eclipse.swt.widgets.Control.WM_CHAR(Control.java:3036) at org.eclipse.swt.widgets.Control.windowProc(Control.java:2939) at org.eclipse.swt.widgets.Display.windowProc(Display.java:2836) at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method) at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:1369) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:1990) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1506) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1482) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench (Workbench.java:246) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:139) at org.eclipse.ui.internal.ide.IDEApplication.run (IDEApplication.java:47) at org.eclipse.core.internal.runtime.PlatformActivator$1.run (PlatformActivator.java:233) at org.eclipse.core.runtime.adaptor.EclipseStarter.run (EclipseStarter.java:84) 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:324) at org.eclipse.core.launcher.Main.basicRun(Main.java:280) at org.eclipse.core.launcher.Main.run(Main.java:741) at org.eclipse.core.launcher.Main.main(Main.java:582)
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/actions/IndentAction.java
/**
	 * Creates a new instance.
	 * 
	 * @param bundle the resource bundle
	 * @param prefix the prefix to use for keys in <code>bundle</code>
	 * @param editor the text editor
	 */
	public IndentAction(ResourceBundle bundle, String prefix, ITextEditor editor, boolean isTabAction) {
		super(bundle, prefix, editor);
		fIsTabAction= isTabAction;
	}
	
	/*
	 * @see org.eclipse.jface.action.Action#run()
	 */
	public void run() {
		
		if (!isEnabled() || !validateEditorInputState())
			return;
		
		ITextSelection selection= getSelection();
		final IDocument document= getDocument();
		
		if (document != null) {
			
			final int offset= selection.getOffset();
			final int length= selection.getLength();
			final Position end= new Position(offset + length);
			final int firstLine, nLines;