This is an automated email from the ASF dual-hosted git repository. swebb2066 pushed a commit to branch another_oss_fuzz_guard in repository https://gitbox.apache.org/repos/asf/logging-log4cxx.git
commit a398ceff0913191277ad39caed545251b16564a7 Author: Stephen Webb <[email protected]> AuthorDate: Wed Feb 5 11:58:31 2025 +1100 Preven a fault when an option name has an emedded NUL character --- src/main/cpp/stringhelper.cpp | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/main/cpp/stringhelper.cpp b/src/main/cpp/stringhelper.cpp index 7519c03e..70efa6d7 100644 --- a/src/main/cpp/stringhelper.cpp +++ b/src/main/cpp/stringhelper.cpp @@ -30,17 +30,18 @@ using namespace LOG4CXX_NS::helpers; bool StringHelper::equalsIgnoreCase(const LogString& s1, const logchar* upper, const logchar* lower) { - for (LogString::const_iterator iter = s1.begin(); - iter != s1.end(); - iter++, upper++, lower++) + for (auto& item : s1) { - if (*iter != *upper && *iter != * lower) + if (0 == item || // OSS-Fuzz makes strings with embedded NUL characters + (item != *upper && item != *lower)) { return false; } + ++upper; + ++lower; } - return (*upper == 0); + return 0 == *upper && iter == s1.end(); } bool StringHelper::equalsIgnoreCase(const LogString& s1, const LogString& upper, const LogString& lower)
