I'm using version R104 of C2. Sample of the bug can be found at:
dl.dropbox.com/u/20830426/undoHistoryBug.capx
To reproduce go to "EventSheetA" and copy both the actions (just the actions) from the event from the only condition and paste them into "EventSheetB" into the only condition. You should receive a warning that "localVariableA" does not exist. Now try and undo.
Instead of the events rolling back to before the past (deleting "set globalVariableA to 2") it actually adds a second one. Sometimes continuing to undo will keep adding new actions, but after a while it will skip back to the events that took place before the copy+paste.
My previous bug reports were rubbish, but this time I think I finally found a proper bug <img src="smileys/smiley2.gif" border="0" align="middle" />