*/
void StrBufCutLeft(StrBuf *Buf, int nChars)
{
+ if ((Buf == NULL) || (Buf->BufUsed == 0)) return;
if (nChars >= Buf->BufUsed) {
FlushStrBuf(Buf);
return;
*/
void StrBufCutRight(StrBuf *Buf, int nChars)
{
+ if ((Buf == NULL) || (Buf->BufUsed == 0)) return;
if (nChars >= Buf->BufUsed) {
FlushStrBuf(Buf);
return;
*/
void StrBufCutAt(StrBuf *Buf, int AfternChars, const char *At)
{
+ if ((Buf == NULL) || (Buf->BufUsed == 0)) return;
if (At != NULL){
AfternChars = At - Buf->buf;
}
{
char *pch, *pche;
+ if ((Buf == NULL) || (Buf->BufUsed == 0)) return;
+
pch = Buf->buf;
pche = pch + Buf->BufUsed;
while (pch < pche) {
{
char *pch, *pche;
+ if ((Buf == NULL) || (Buf->BufUsed == 0)) return;
+
pch = Buf->buf;
pche = pch + Buf->BufUsed;
while (pch < pche) {
*/
int StrBufNum_tokens(const StrBuf *source, char tok)
{
- if (source == NULL)
+ char *pch, *pche;
+ long NTokens;
+ if ((source == NULL) || (source->BufUsed == 0))
return 0;
- return num_tokens(source->buf, tok);
+ if ((source->BufUsed == 1) && (*source->buf == tok))
+ return 2;
+ NTokens = 1;
+ pch = source->buf;
+ pche = pch + source->BufUsed;
+ while (pch < pche)
+ {
+ if (*pch == tok)
+ NTokens ++;
+ pch ++;
+ }
+ return NTokens;
}
/**