From af38a7762b23a950618801ca8d8bbfec87bb02a7 Mon Sep 17 00:00:00 2001 From: Dave Reisner Date: Tue, 12 Mar 2013 12:48:32 -0400 Subject: check for exact match before matching on a prefix --- ponymix.cc | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/ponymix.cc b/ponymix.cc index b3c1b98..8ad23ed 100644 --- a/ponymix.cc +++ b/ponymix.cc @@ -449,8 +449,14 @@ static const std::pair& string_to_command( }; const auto match = actionmap.lower_bound(str); + + // Check for exact match + if (match->first == str) { + return *match; + } + + // Match on prefix, ensure only a single match for (auto iter = match; iter != actionmap.end(); iter++) { - // Match on prefix, ensure only a single match if (iter->first.find(str) != 0) { if (iter == match) { errx(1, "error: Invalid action specified: %s", str); -- cgit v1.2.3