git: 9front

ref: 94d2ee527af44610a498d6f6adbba8f0b6d76f17
dir: /sys/src/libc/port/memccpy.c/

View raw version
#include	<u.h>
#include	<libc.h>

void*
memccpy(void *a1, void *a2, int c, usize n)
{
	uchar *s1, *s2;

	s1 = a1;
	s2 = a2;
	c &= 0xFF;
	while(n > 0) {
		if((*s1++ = *s2++) == c)
			return s1;
		n--;
	}
	return 0;
}