X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/b3e8d00ab0015efa499853883ce51c577e960d9e..b6f4144e596cdf8e862e513b7f7c09022a664137:/src/common/wxchar.cpp diff --git a/src/common/wxchar.cpp b/src/common/wxchar.cpp index 7e3c343b5e..25adbfad8d 100644 --- a/src/common/wxchar.cpp +++ b/src/common/wxchar.cpp @@ -285,12 +285,20 @@ WXDLLEXPORT size_t wxStrspn(const wxChar *s, const wxChar *accept) WXDLLEXPORT wxChar * wxStrstr(const wxChar *haystack, const wxChar *needle) { - wxChar *fnd; - while ((fnd = wxStrchr(haystack, *needle))) { - if (!wxStrcmp(fnd, needle)) return fnd; - haystack = fnd + 1; - } - return (wxChar *)NULL; + wxCHECK_RET( needle, NULL, _T("NULL argument in wxStrstr") ); + + const size_t len = wxStrlen(needle); + + wxChar *fnd; + while ( (fnd = wxStrchr(haystack, *needle)) ) + { + if ( !wxStrncmp(fnd, needle, len) ) + return fnd; + + haystack = fnd + 1; + } + + return (wxChar *)NULL; } WXDLLEXPORT double wxStrtod(const wxChar *nptr, wxChar **endptr)