"Anselm R. Garbe" <[EMAIL PROTECTED]> writes:

> The only questionable issue I don't like is the strsep(3) use,
> because of portability concerns.

Failing all else, I guess a strsep() tokeniser

        while(tag = strsep(&line, " \t\n")) {
                if(!tag[0])
                        continue;
                tags = erealloc(tags, sizeof(char *) * ++ntags);
                tags[ntags - 1] = tag;
        }

can always be expanded to something like this

        do {
                tag = line;
                if (line = strpbrk(line, " \t\n"))
                        *line++ = '\0';
                if !tag[0]
                        continue;
                tags = erealloc(tags, sizeof(char *) * ++ntags);
                tags[ntags - 1] = tag;
        } while (line);

assuming strpbrk is reasonably universal.

Cheers,

Chris.

Reply via email to