Skip to content
This repository was archived by the owner on Apr 10, 2021. It is now read-only.
This repository was archived by the owner on Apr 10, 2021. It is now read-only.

ArrayIndexOutOfBoundsException while using undo #111

Open
@Chris2011

Description

@Chris2011

While testing my PR, I got this exception, when I changed a json file. I changed the code inside of it, hit save and did often a undo (ctrl + z) and after the second undo or smth like that, I got this exception, which shouldn't happen:

java.lang.ArrayIndexOutOfBoundsException: 2776
	at org.netbeans.modules.editor.lib2.document.MarkVector.getMark(MarkVector.java:560)
	at org.netbeans.modules.editor.lib2.document.MarkVector.insertUpdate(MarkVector.java:257)
	at org.netbeans.modules.editor.lib2.document.EditorDocumentContent.insertEdit(EditorDocumentContent.java:137)
	at org.netbeans.modules.editor.lib2.document.ContentEdit$RemoveEdit.undo(ContentEdit.java:240)
	at org.netbeans.editor.BaseDocumentEvent.undo(BaseDocumentEvent.java:280)
	at org.netbeans.editor.GuardedDocumentEvent.undo(GuardedDocumentEvent.java:72)
	at org.netbeans.modules.editor.lib2.document.StableCompoundEdit.undo(StableCompoundEdit.java:93)
	at org.netbeans.editor.BaseDocument$AtomicCompoundEdit.undo(BaseDocument.java:2322)
	at org.netbeans.editor.BaseDocument$AtomicCompoundEdit.undo(BaseDocument.java:2333)
	at org.netbeans.editor.BaseDocument$AtomicCompoundEdit.undo(BaseDocument.java:2333)
	at org.openide.text.WrapUndoEdit.undo(WrapUndoEdit.java:93)
	at org.openide.awt.UndoRedo$Manager.undoTo(UndoRedo.java:230)
	at org.openide.awt.UndoRedo$Manager.undo(UndoRedo.java:200)
	at org.openide.text.UndoRedoManager.access$301(UndoRedoManager.java:98)
	at org.openide.text.UndoRedoManager$DocLockedRun.run(UndoRedoManager.java:658)
	at org.netbeans.editor.GuardedDocument.runAtomic(GuardedDocument.java:323)
	at org.openide.text.UndoRedoManager$DocLockedRun.<init>(UndoRedoManager.java:631)
	at org.openide.text.UndoRedoManager$DocLockedRun.<init>(UndoRedoManager.java:623)
	at org.openide.text.UndoRedoManager$DocLockedRun.<init>(UndoRedoManager.java:619)
	at org.openide.text.UndoRedoManager.undo(UndoRedoManager.java:437)
	at org.netbeans.core.multiview.MultiViewPeer$DelegateUndoRedo.undo(MultiViewPeer.java:1106)
	at org.openide.actions.UndoAction.performAction(UndoAction.java:186)
	at org.openide.util.actions.CallableSystemAction$1.run(CallableSystemAction.java:130)
	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:127)
	at org.netbeans.modules.editor.NbEditorKit$NbUndoAction.actionPerformed(NbEditorKit.java:903)
	at org.netbeans.editor.BaseAction.actionPerformed(BaseAction.java:339)
	at javax.swing.SwingUtilities.notifyAction(SwingUtilities.java:1663)
	at javax.swing.JComponent.processKeyBinding(JComponent.java:2882)
	at javax.swing.JComponent.processKeyBindings(JComponent.java:2929)
	at javax.swing.JComponent.processKeyEvent(JComponent.java:2845)
	at java.awt.Component.processEvent(Component.java:6310)
	at java.awt.Container.processEvent(Container.java:2236)
	at java.awt.Component.dispatchEventImpl(Component.java:4889)
	at java.awt.Container.dispatchEventImpl(Container.java:2294)
	at java.awt.Component.dispatchEvent(Component.java:4711)
	at java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1954)
	at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:806)
	at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:1074)
	at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:945)
	at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:771)
	at java.awt.Component.dispatchEventImpl(Component.java:4760)
	at java.awt.Container.dispatchEventImpl(Container.java:2294)
	at java.awt.Window.dispatchEventImpl(Window.java:2746)
	at java.awt.Component.dispatchEvent(Component.java:4711)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
	at java.awt.EventQueue.access$500(EventQueue.java:97)
	at java.awt.EventQueue$3.run(EventQueue.java:709)
	at java.awt.EventQueue$3.run(EventQueue.java:703)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:90)
	at java.awt.EventQueue$4.run(EventQueue.java:731)
	at java.awt.EventQueue$4.run(EventQueue.java:729)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
	at org.netbeans.core.TimableEventQueue.dispatchEvent(TimableEventQueue.java:159)
[catch] at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

Regards

Chris

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions