From 64553dd6331fbdaa946689fb8197e7a783a6ae00 Mon Sep 17 00:00:00 2001 From: Thomas Goyne Date: Tue, 31 Jan 2012 04:04:02 +0000 Subject: [PATCH] Handle commands which change types at runtime. Closes #1413. Originally committed to SVN as r6406. --- aegisub/src/menu.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/aegisub/src/menu.cpp b/aegisub/src/menu.cpp index 8e5e031e6..981c2fa56 100644 --- a/aegisub/src/menu.cpp +++ b/aegisub/src/menu.cpp @@ -146,8 +146,10 @@ class CommandManager { void UpdateItem(std::pair const& item) { cmd::Command *c = cmd::get(item.first); int flags = c->Type(); - if (flags & cmd::COMMAND_VALIDATE) + if (flags & cmd::COMMAND_VALIDATE) { item.second->Enable(c->Validate(context)); + flags = c->Type(); + } if (flags & cmd::COMMAND_DYNAMIC_NAME) UpdateItemName(item); if (flags & cmd::COMMAND_DYNAMIC_HELP)