From 5c2d31d6db608ed05bdccd900bf15cde6154dee7 Mon Sep 17 00:00:00 2001 From: Thomas Goyne Date: Fri, 19 Oct 2012 13:25:55 -0700 Subject: [PATCH] Fix splitting lines by karaoke New lines have to be committed before they can be selected. Closes #1541. --- aegisub/src/ass_karaoke.cpp | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/aegisub/src/ass_karaoke.cpp b/aegisub/src/ass_karaoke.cpp index db3759218..bf1585b8b 100644 --- a/aegisub/src/ass_karaoke.cpp +++ b/aegisub/src/ass_karaoke.cpp @@ -317,13 +317,16 @@ void AssKaraoke::SplitLines(std::set const& lines, agi::Context *c sel.erase(diag); delete diag; --it; + + did_split = true; } + if (!did_split) return; + + c->ass->Commit(_("splitting"), AssFile::COMMIT_DIAG_ADDREM | AssFile::COMMIT_DIAG_FULL); + AssDialogue *new_active = c->selectionController->GetActiveLine(); if (!sel.count(c->selectionController->GetActiveLine())) new_active = *sel.begin(); c->selectionController->SetSelectionAndActive(sel, new_active); - - if (did_split) - c->ass->Commit(_("splitting"), AssFile::COMMIT_DIAG_ADDREM | AssFile::COMMIT_DIAG_FULL); }