1*3cd4f1d1SCharles Forsyth #include "lib9.h" 237da2899SCharles.Forsyth 337da2899SCharles.Forsyth int utflen(char * s)437da2899SCharles.Forsythutflen(char *s) 537da2899SCharles.Forsyth { 637da2899SCharles.Forsyth int c; 737da2899SCharles.Forsyth long n; 837da2899SCharles.Forsyth Rune rune; 937da2899SCharles.Forsyth 1037da2899SCharles.Forsyth n = 0; 1137da2899SCharles.Forsyth for(;;) { 1237da2899SCharles.Forsyth c = *(uchar*)s; 1337da2899SCharles.Forsyth if(c < Runeself) { 1437da2899SCharles.Forsyth if(c == 0) 1537da2899SCharles.Forsyth return n; 1637da2899SCharles.Forsyth s++; 1737da2899SCharles.Forsyth } else 1837da2899SCharles.Forsyth s += chartorune(&rune, s); 1937da2899SCharles.Forsyth n++; 2037da2899SCharles.Forsyth } 2137da2899SCharles.Forsyth } 22