From 2f2aab963ddd04e51544135c637b58ec20aecd41 Mon Sep 17 00:00:00 2001 From: Lioncash Date: Sat, 18 Feb 2017 05:26:49 -0500 Subject: [PATCH] SymbolDB: Simplify GetSymbolsFromHash Given a std::map can't have duplicate keys, iterating over the map explicitly isn't necessary, and find() can just be used instead. Also, instead of manually calling push_back() for every entry to be added, the range constructor of std::vector can be used instead to add the whole range all at once. --- Source/Core/Common/SymbolDB.cpp | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/Source/Core/Common/SymbolDB.cpp b/Source/Core/Common/SymbolDB.cpp index f558b54ebb..cec02af226 100644 --- a/Source/Core/Common/SymbolDB.cpp +++ b/Source/Core/Common/SymbolDB.cpp @@ -72,14 +72,12 @@ Symbol* SymbolDB::GetSymbolFromHash(u32 hash) std::vector SymbolDB::GetSymbolsFromHash(u32 hash) { - std::vector symbols; + const auto iter = checksumToFunction.find(hash); - for (const auto& iter : checksumToFunction) - if (iter.first == hash) - for (const auto& symbol : iter.second) - symbols.push_back(symbol); + if (iter == checksumToFunction.cend()) + return {}; - return symbols; + return {iter->second.cbegin(), iter->second.cend()}; } void SymbolDB::AddCompleteSymbol(const Symbol& symbol)