From 064edf9ef1c2b596d703fd2f4ae5421737808b86 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);