Restated text format loop to avoid out-of-bounds condition

This commit is contained in:
Phil Nash 2017-01-23 16:58:49 +00:00
parent 1efd8d3067
commit f347611403

View File

@ -84,8 +84,8 @@ namespace Tbc {
if( itEnd != strEnd ) {
bool foundWrapPoint = false;
for( iterator findIt = itEnd; !foundWrapPoint & findIt >= it; --findIt ) {
iterator findIt = itEnd;
do {
if( wrappableAfterChars.find( *findIt ) != std::string::npos && findIt != itEnd ) {
itEnd = findIt+1;
itNext = findIt+1;
@ -101,7 +101,13 @@ namespace Tbc {
itEnd = findIt;
foundWrapPoint = true;
}
if( findIt == it )
break;
else
--findIt;
}
while( !foundWrapPoint );
if( !foundWrapPoint ) {
// No good wrap char, so we'll break mid word and add a hyphen
--itEnd;