/* Copyright © 1998, 1999 Lucent Technologies Inc. All rights reserved. Revisions Copyright © 1999, 2000 Vita Nuova Limited. All rights reserved. Revisions Copyright © 2001 Norman Ramsey. All rights reserved. */ #include "lib9.h" char* utfrune(char *s, long c) { long c1; Rune r; int n; if(c < Runesync) /* not part of utf sequence */ return strchr(s, c); for(;;) { c1 = *(uchar*)s; if(c1 < Runeself) { /* one byte rune */ if(c1 == 0) return 0; if(c1 == c) return s; s++; continue; } n = chartorune(&r, s); if(r == c) return s; s += n; } return 0; }