Safer way to update animation if changed, fixes #26670

This commit is contained in:
Juan Linietsky
2019-03-06 10:22:38 -03:00
parent 4dd99701b0
commit 9b5c6f539b
3 changed files with 48 additions and 8 deletions

View File

@@ -250,8 +250,9 @@ void UndoRedo::commit_action() {
if (action_level > 0)
return; //still nested
commiting++;
redo(); // perform action
commiting--;
if (callback && actions.size() > 0) {
callback(callback_ud, actions[actions.size() - 1].name);
}
@@ -326,12 +327,10 @@ bool UndoRedo::redo() {
if ((current_action + 1) >= actions.size())
return false; //nothing to redo
commiting++;
current_action++;
_process_operation_list(actions.write[current_action].do_ops.front());
version++;
commiting--;
return true;
}
@@ -341,11 +340,9 @@ bool UndoRedo::undo() {
ERR_FAIL_COND_V(action_level > 0, false);
if (current_action < 0)
return false; //nothing to redo
commiting++;
_process_operation_list(actions.write[current_action].undo_ops.front());
current_action--;
version--;
commiting--;
return true;
}