diff --git a/source/RobotAPI/libraries/skills_gui/memory/SkillManagerWrapper.cpp b/source/RobotAPI/libraries/skills_gui/memory/SkillManagerWrapper.cpp
index ff35703b31ef627886956fcebc2ff2ae6e8b6292..0596c33917de9506299a375235be3e2feb3dd312 100644
--- a/source/RobotAPI/libraries/skills_gui/memory/SkillManagerWrapper.cpp
+++ b/source/RobotAPI/libraries/skills_gui/memory/SkillManagerWrapper.cpp
@@ -82,16 +82,21 @@ namespace armarx::skills::gui
             return;
         }
 
-        std::vector<std::string> substrings = simox::alg::split(currentSkillSearch);
-        for (auto& string : substrings)
+        std::vector<std::string> substrings;
+
         {
-            simox::alg::to_lower(string);
+            std::vector<std::string> rawSubstrings = simox::alg::split(currentSkillSearch);
+            for (auto& string : rawSubstrings)
+            {
+                substrings.push_back(simox::alg::to_lower(string));
+            }
         }
 
 
         for (auto it = update.begin(); it != update.end();)
         {
-            if (not matches(skills::SkillID::FromIce(it->first).skillName, substrings))
+            if (not matches(simox::alg::to_lower(skills::SkillID::FromIce(it->first).skillName),
+                            substrings))
             {
                 it = update.erase(it);
             }