ref: a8472c1d56c5663f7c4c97e172da84bbc6959cdd
dir: /libc/utfnlen.c/
#include <u.h>
#include <libc.h>
int
utfnlen(char *s, long m)
{
int c;
long n;
Rune rune;
char *es;
es = s + m;
for(n = 0; s < es; n++) {
c = *(uchar*)s;
if(c < Runeself){
if(c == '\0')
break;
s++;
continue;
}
if(!fullrune(s, es-s))
break;
s += chartorune(&rune, s);
}
return n;
}