ptr = fmt;
while (*ptr != 0) {
if (*buf == 0)
break;
c = *ptr++;
label:
switch (c) {
case 0:
case '%':
if (*buf++ != '%')
return (NULL);
while (isspace_l((unsigned char)*buf, locale))
buf++;
default:
}