]> git.lizzy.rs Git - dragonfireclient.git/commitdiff
Fix OOB read in trim("")
authorShadowNinja <shadowninja@minetest.net>
Sun, 30 Jan 2022 03:50:43 +0000 (22:50 -0500)
committerrubenwardy <rw@rubenwardy.com>
Fri, 8 Apr 2022 13:55:21 +0000 (14:55 +0100)
src/util/string.h

index d8ec633ee63e51a0c944d4b07bcf764a0ffcae2e..aa4329f2f536d50571ce07d281acd9595c8cf322 100644 (file)
@@ -295,11 +295,11 @@ inline std::string lowercase(const std::string &str)
 inline std::string trim(const std::string &str)
 {
        size_t front = 0;
+       size_t back = str.size();
 
-       while (std::isspace(str[front]))
+       while (front < back && std::isspace(str[front]))
                ++front;
 
-       size_t back = str.size();
        while (back > front && std::isspace(str[back - 1]))
                --back;