From 08c9b299b5912a53b6445cc276e6a20c21d3ab04 Mon Sep 17 00:00:00 2001 From: Thomas Goyne <plorkyeran@aegisub.org> Date: Tue, 4 Mar 2014 11:02:43 -0800 Subject: [PATCH] Use splice rather than swaps to pop the undo stack --- aegisub/src/subs_controller.cpp | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/aegisub/src/subs_controller.cpp b/aegisub/src/subs_controller.cpp index bd4ccd072..4720fd5d2 100644 --- a/aegisub/src/subs_controller.cpp +++ b/aegisub/src/subs_controller.cpp @@ -308,9 +308,7 @@ void SubsController::OnCommit(AssFileCommit c) { void SubsController::Undo() { if (undo_stack.size() <= 1) return; - redo_stack.emplace_back(AssFile(), undo_stack.back().undo_description, commit_id); - context->ass->swap(redo_stack.back().file); - undo_stack.pop_back(); + redo_stack.splice(redo_stack.end(), undo_stack, std::prev(undo_stack.end())); *context->ass = undo_stack.back().file; commit_id = undo_stack.back().commit_id; -- GitLab