ArrayIndexOutOfBoundsException while using undo
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
Anything new here?
Can please someone have a look who has more knowledge about it, than me? @bennyn can you maybe have a look please? Otherwise the plugin will be unusable.
Hey @emabrey do have time to have a look? Benny pointed me in your direction ;).
I'm attending school currently and I have several exams this week, but if I have the time I'll try to look at this this week. Otherwise I'll do it as soon as I can, but I will look at this ASAP either way.
@emabrey no worries, we have some prio: high bugs/tickets which prevents some users of using this plugin. We should focus on those things first.
Thx for your interest and info :)
Hey @emabrey how is the progress here?
Hey, anything new here?