Undo throws ArgumentOutOfRangeException

I pressed control + Z twice
and I got the error below:

See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text
System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index
at System.ThrowHelper.ThrowArgumentOutOfRangeException()
at Northwoods.Go.GoUndoManagerCompoundEdit.Undo()
at Northwoods.Go.GoUndoManager.Undo()
at Northwoods.Go.GoDocument.Undo()
at Northwoods.Go.GoView.Undo()
at Northwoods.Go.GoToolManager.DoKeyDown()
at Northwoods.Go.GoView.DoKeyDown()
at Northwoods.Go.GoView.OnKeyDown(KeyEventArgs evt)
at System.Windows.Forms.Control.ProcessKeyEventArgs(Message& m)
at System.Windows.Forms.Control.ProcessKeyMessage(Message& m)
at System.Windows.Forms.Control.WmKeyChar(Message& m)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

Loaded Assemblies **************

The worst part is that the stack trace does not show any of my code so I have no Idea what I did wrong.
This is urgent !!!

Well, we’ve only seen this exception once before… 9 years ago.


Now… in that case, we believed it to be user code, but the user never came back to confirm that. Maybe there is enough in that thread to give you an idea. If not, I’ll probably have you send me the relevant node / link class code.

I think you must override ChangeValue in your new class method and make some action with your new attribute and revert the change