From 22170030da4801e784d422dbdc296d78ce02e095 Mon Sep 17 00:00:00 2001 From: wom-lord Date: Thu, 3 Apr 2025 20:32:29 +0300 Subject: [PATCH] mpq: 2x faster normalization --- src/noggit/MPQ.cpp | 22 ++++++++-------------- 1 file changed, 8 insertions(+), 14 deletions(-) diff --git a/src/noggit/MPQ.cpp b/src/noggit/MPQ.cpp index 140949c30..3a1baa67d 100644 --- a/src/noggit/MPQ.cpp +++ b/src/noggit/MPQ.cpp @@ -338,24 +338,18 @@ namespace noggit { std::string normalized_filename (std::string filename) { - std::transform (filename.begin(), filename.end(), filename.begin(), [](unsigned char c) { return std::tolower(c); }); - std::transform ( filename.begin(), filename.end(), filename.begin() - , [] (char c) - { - return c == '\\' ? '/' : c; - } - ); + for (char& c : filename) + { + c = (c == '\\') ? '/' : std::tolower(c); + } return filename; } std::string normalized_filename_insane (std::string filename) { - std::transform (filename.begin(), filename.end(), filename.begin(), [](unsigned char c) { return std::toupper(c); }); - std::transform ( filename.begin(), filename.end(), filename.begin() - , [] (char c) - { - return c == '/' ? '\\' : c; - } - ); + for (char& c : filename) + { + c = (c == '/') ? '\\' : std::toupper(c); + } return filename; } }