xref: /plan9/sys/src/libc/port/runestrchr.c (revision 59cc4ca53493a3c6d2349fe2b7f7c40f7dce7294)
1*59cc4ca5SDavid du Colombier #include <u.h>
2*59cc4ca5SDavid du Colombier #include <libc.h>
3*59cc4ca5SDavid du Colombier 
4*59cc4ca5SDavid du Colombier Rune*
runestrchr(Rune * s,Rune c)5*59cc4ca5SDavid du Colombier runestrchr(Rune *s, Rune c)
6*59cc4ca5SDavid du Colombier {
7*59cc4ca5SDavid du Colombier 	Rune c0 = c;
8*59cc4ca5SDavid du Colombier 	Rune c1;
9*59cc4ca5SDavid du Colombier 
10*59cc4ca5SDavid du Colombier 	if(c == 0) {
11*59cc4ca5SDavid du Colombier 		while(*s++)
12*59cc4ca5SDavid du Colombier 			;
13*59cc4ca5SDavid du Colombier 		return s-1;
14*59cc4ca5SDavid du Colombier 	}
15*59cc4ca5SDavid du Colombier 
16*59cc4ca5SDavid du Colombier 	while(c1 = *s++)
17*59cc4ca5SDavid du Colombier 		if(c1 == c0)
18*59cc4ca5SDavid du Colombier 			return s-1;
19*59cc4ca5SDavid du Colombier 	return 0;
20*59cc4ca5SDavid du Colombier }
21