| // as find but search ends if the terminator string is found | // as find but search ends if the terminator string is found | ||||
| bool Stream::findUntil(const char *target, const char *terminator) | bool Stream::findUntil(const char *target, const char *terminator) | ||||
| { | { | ||||
| if(target == NULL) return true; | |||||
| size_t tlen = (terminator==NULL)?0:strlen(terminator); | |||||
| if(target == nullptr) return true; | |||||
| size_t tlen = (terminator==nullptr)?0:strlen(terminator); | |||||
| return findUntil(target, strlen(target), terminator, strlen(terminator)); | return findUntil(target, strlen(target), terminator, strlen(terminator)); | ||||
| } | } | ||||
| size_t index = 0; // maximum target string length is 64k bytes! | size_t index = 0; // maximum target string length is 64k bytes! | ||||
| size_t termIndex = 0; | size_t termIndex = 0; | ||||
| int c; | int c; | ||||
| if( target == NULL) return true; | |||||
| if( target == nullptr) return true; | |||||
| if( *target == 0) return true; // return true if target is a null string | if( *target == 0) return true; // return true if target is a null string | ||||
| if (terminator == NULL) termLen = 0; | |||||
| if (terminator == nullptr) termLen = 0; | |||||
| while( (c = timedRead()) > 0){ | while( (c = timedRead()) > 0){ | ||||
| if( c == target[index]){ | if( c == target[index]){ |