diff options
author | Justin Clark-Casey (justincc) | 2011-07-19 06:11:16 +0100 |
---|---|---|
committer | Justin Clark-Casey (justincc) | 2011-07-19 06:11:16 +0100 |
commit | c50533659a9c7627cd6b24820078192b18c662f0 (patch) | |
tree | b618695b1448f84127b6ab05df4829efd3f37e87 /OpenSim | |
parent | stop redo throwing an exception if there is nothing to redo (diff) | |
download | opensim-SC-c50533659a9c7627cd6b24820078192b18c662f0.zip opensim-SC-c50533659a9c7627cd6b24820078192b18c662f0.tar.gz opensim-SC-c50533659a9c7627cd6b24820078192b18c662f0.tar.bz2 opensim-SC-c50533659a9c7627cd6b24820078192b18c662f0.tar.xz |
If we store an undo, wipe anything already present on the redo stack
This stops problems when we undo a few steps and start off down another path.
Surprisingly, apart from this now fixed problem, redo appears to be working too.
Diffstat (limited to 'OpenSim')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/SceneObjectPart.cs | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs index ccf8a25..e8097fa 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs | |||
@@ -3705,6 +3705,9 @@ namespace OpenSim.Region.Framework.Scenes | |||
3705 | 3705 | ||
3706 | m_undo.Push(nUndo); | 3706 | m_undo.Push(nUndo); |
3707 | 3707 | ||
3708 | if (m_redo.Count > 0) | ||
3709 | m_redo.Clear(); | ||
3710 | |||
3708 | // m_log.DebugFormat( | 3711 | // m_log.DebugFormat( |
3709 | // "[SCENE OBJECT PART]: Stored undo state for {0} {1}, forGroup {2}, stack size now {3}", | 3712 | // "[SCENE OBJECT PART]: Stored undo state for {0} {1}, forGroup {2}, stack size now {3}", |
3710 | // Name, LocalId, forGroup, m_undo.Count); | 3713 | // Name, LocalId, forGroup, m_undo.Count); |