diff --git a/EgtGeneral.rc b/EgtGeneral.rc index a12e7b0..21816ad 100644 Binary files a/EgtGeneral.rc and b/EgtGeneral.rc differ diff --git a/StringUtils.cpp b/StringUtils.cpp index 2669d32..f7a847c 100644 --- a/StringUtils.cpp +++ b/StringUtils.cpp @@ -303,8 +303,12 @@ Tokenize( const string& sString, const string& sSeparators, STRVECTOR& vsTokens) while ( iPosStart != string::npos) { // cerco il primo separatore string::size_type iPosEnd = sString.find_first_of( sSeparators, iPosStart) ; - // aggiungo il token al vettore - vsTokens.push_back( sString.substr( iPosStart, iPosEnd - iPosStart)) ; + // se arrivato alla fine, aggiungo il token al vettore + if ( iPosEnd == string::npos) + vsTokens.push_back( sString.substr( iPosStart)) ; + // altrimenti aggiungo se separatore diverso da spazio o risultato non vuoto + else if ( sString[iPosEnd] != ' ' || iPosEnd > iPosStart) + vsTokens.push_back( sString.substr( iPosStart, iPosEnd - iPosStart)) ; // cerco l'inizio di un nuovo token iPosStart = ( iPosEnd != string::npos ? iPosEnd + 1 : string::npos) ; }