javax.swing.text.BadLocationException: Length must be positive at javax.swing.text.AbstractDocument.getText(AbstractDocument.java:795) Caused: java.lang.IllegalStateException: javax.swing.text.BadLocationException: Length must be positive at org.netbeans.editor.FixLineSyntaxState.fixSyntaxStateInfos(FixLineSyntaxState.java:524) at org.netbeans.editor.FixLineSyntaxState.update(FixLineSyntaxState.java:303) at org.netbeans.editor.FixLineSyntaxState$BeforeLineUndo.undo(FixLineSyntaxState.java:611) at org.netbeans.editor.BaseDocumentEvent.undo(BaseDocumentEvent.java:289) at org.netbeans.editor.GuardedDocumentEvent.undo(GuardedDocumentEvent.java:72) at javax.swing.undo.CompoundEdit.undo(CompoundEdit.java:46) at org.netbeans.editor.BaseDocument$AtomicCompoundEdit.undo(BaseDocument.java:2204) at javax.swing.undo.UndoManager.undoTo(UndoManager.java:320) at javax.swing.undo.UndoManager.undo(UndoManager.java:398) at org.openide.awt.UndoRedo$Manager.undo(UndoRedo.java:184) at org.openide.text.CloneableEditorSupport$UndoGroupManager.undo(CloneableEditorSupport.java:3704) at org.openide.text.CloneableEditorSupport$CESUndoRedoManager.access$3301(CloneableEditorSupport.java:3235) at org.openide.text.CloneableEditorSupport$CESUndoRedoManager$RenderUndo.run(CloneableEditorSupport.java:3408) at org.netbeans.editor.GuardedDocument.runAtomic(GuardedDocument.java:314) at org.openide.text.CloneableEditorSupport$CESUndoRedoManager$RenderUndo.(CloneableEditorSupport.java:3384) at org.openide.text.CloneableEditorSupport$CESUndoRedoManager$RenderUndo.(CloneableEditorSupport.java:3375) at org.openide.text.CloneableEditorSupport$CESUndoRedoManager$RenderUndo.(CloneableEditorSupport.java:3371) at org.openide.text.CloneableEditorSupport$CESUndoRedoManager.undo(CloneableEditorSupport.java:3268) at org.netbeans.core.multiview.MultiViewPeer$DelegateUndoRedo.undo(MultiViewPeer.java:788) at org.openide.actions.UndoAction.performAction(UndoAction.java:185) at org.openide.util.actions.CallableSystemAction$1.run(CallableSystemAction.java:129) at org.openide.util.actions.ActionInvoker$1.run(ActionInvoker.java:95) at org.openide.util.actions.ActionInvoker.doPerformAction(ActionInvoker.java:116) at org.openide.util.actions.ActionInvoker.invokeAction(ActionInvoker.java:99) at org.openide.util.actions.CallableSystemAction.actionPerformed(CallableSystemAction.java:126) at org.netbeans.modules.editor.NbEditorKit$NbUndoAction.actionPerformed(NbEditorKit.java:569) at org.netbeans.editor.BaseAction.actionPerformed(BaseAction.java:339) at javax.swing.SwingUtilities.notifyAction(SwingUtilities.java:1639) at javax.swing.JComponent.processKeyBinding(JComponent.java:2851) at javax.swing.JComponent.processKeyBindings(JComponent.java:2886) at javax.swing.JComponent.processKeyEvent(JComponent.java:2814) at java.awt.Component.processEvent(Component.java:6065) at java.awt.Container.processEvent(Container.java:2041) at java.awt.Component.dispatchEventImpl(Component.java:4651) at java.awt.Container.dispatchEventImpl(Container.java:2099) at java.awt.Component.dispatchEvent(Component.java:4481) at java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1850) at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:712) at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:990) at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:855) at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:676) at java.awt.Component.dispatchEventImpl(Component.java:4523) at java.awt.Container.dispatchEventImpl(Container.java:2099) at java.awt.Window.dispatchEventImpl(Window.java:2478) at java.awt.Component.dispatchEvent(Component.java:4481) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:643) at java.awt.EventQueue.access$000(EventQueue.java:84) at java.awt.EventQueue$1.run(EventQueue.java:602) at java.awt.EventQueue$1.run(EventQueue.java:600) at java.security.AccessController.doPrivileged(AccessController.java:0) at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87) at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:98) at java.awt.EventQueue$2.run(EventQueue.java:616) at java.awt.EventQueue$2.run(EventQueue.java:614) at java.security.AccessController.doPrivileged(AccessController.java:0) at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87) at java.awt.EventQueue.dispatchEvent(EventQueue.java:613) at org.netbeans.core.TimableEventQueue.dispatchEvent(TimableEventQueue.java:153) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161) at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)