mirror of
https://github.com/cookiengineer/audacity
synced 2025-11-05 08:33:53 +01:00
Bug 2499 - Macros: applying macro to project focus problem
Problem:
Applying macro to project always sets first track as focus.
The problem was introduced by commit 06cddda, which accidentally declared cleanup2 in the wrong scope.
This meant that ProjectHistory::RollBackState() was always called, which eventually causes TrackPanel::OnUndoReset() to be called, which sets the first track to be the focus.
Fix:
Declare cleanup2 in the correct scope.
This commit is contained in:
@@ -969,6 +969,8 @@ bool MacroCommands::ApplyMacro(
|
||||
}
|
||||
|
||||
// Upon exit of the top level apply, roll back the state if an error occurs.
|
||||
// This code relies on cleanup2 being defined after cleanup1, so that its
|
||||
// destructor is run before cleanup1's destructor.
|
||||
auto cleanup2 = finally([&] {
|
||||
if (MacroReentryCount == 1 && !res && proj) {
|
||||
// Macro failed or was cancelled; revert to the previous state
|
||||
|
||||
Reference in New Issue
Block a user