git: 9front

ref: 6bda784cb6a0a933a3c3bde7e6b6d60d221d88f2
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;
}