From 6319aa81ab9326210052439e26a08b4864b6609b Mon Sep 17 00:00:00 2001 From: Orange Date: Sat, 4 Oct 2025 18:33:57 +0300 Subject: [PATCH] Handles empty pattern strings Skips processing when encountering an empty string slice during pattern scanning. This prevents unexpected behavior and potential errors when the pattern string contains sections that result in an empty byte string. --- source/utility/pattern_scan.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/source/utility/pattern_scan.cpp b/source/utility/pattern_scan.cpp index 7c6b4d9..3efd097 100644 --- a/source/utility/pattern_scan.cpp +++ b/source/utility/pattern_scan.cpp @@ -24,8 +24,10 @@ namespace omath const std::string_view byte_str = pattern_string.substr(sting_view_start, sting_view_end); if (byte_str.empty()) + { + start = end != pattern_string.end() ? std::next(end) : end; continue; - + } if (byte_str == "?" || byte_str == "??") { pattern.emplace_back(std::nullopt);