- for (ptr = str; *ptr; len++, ptr++) {
- if (*ptr < 32 || *ptr == '\"' || *ptr == '\\')
- len++;
+ for (loop = 0, required = 0, ptr = str;
+ loop < len;
+ loop++, required++, ptr++) {
+ if ((unsigned char)(*ptr) < 32 || *ptr == '\"' || *ptr == '\\')
+ required++;