You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The problem is observable when executing in debug. prior to application exit a "std::out_of_range" exception is thrown. The error source is in rescle.cc line 908. The behavior of "size_t start = manifestStringLocal.find(L"<?xml");" is poor at fault. Documentation for "std::string.find" states that if the search string is not found the return value is "basic_string::npos" == "-1". Unfortunately the return value of ::find" is type "unsigned int" and so the test "if (start < 0)" fails, passing an out of range start value to "manifestStringLocal = manifestStringLocal.substr(start);".
Hi
The problem is observable when executing in debug. prior to application exit a "std::out_of_range" exception is thrown. The error source is in rescle.cc line 908. The behavior of "size_t start = manifestStringLocal.find(L"<?xml");" is poor at fault. Documentation for "std::string.find" states that if the search string is not found the return value is "basic_string::npos" == "-1". Unfortunately the return value of ::find" is type "unsigned int" and so the test "if (start < 0)" fails, passing an out of range start value to "manifestStringLocal = manifestStringLocal.substr(start);".
//if (start > 0) {
if ((start > 0) && (start < manifestStringLocal.size())) {
fixes the problem.
Regards
Chris LaRocque
The text was updated successfully, but these errors were encountered: