diff options
author | obrien <obrien@FreeBSD.org> | 2008-07-14 21:36:02 +0000 |
---|---|---|
committer | obrien <obrien@FreeBSD.org> | 2008-07-14 21:36:02 +0000 |
commit | c131962593b3653c8ba7b19472b185cf815b50ab (patch) | |
tree | 8ff8d84921c49a4a96fac4fe3bee7a59f9781a0a /sys/libkern/memset.c | |
parent | 253913181a592c136cd5e4316e6b0d8da1930ec4 (diff) | |
download | FreeBSD-src-c131962593b3653c8ba7b19472b185cf815b50ab.zip FreeBSD-src-c131962593b3653c8ba7b19472b185cf815b50ab.tar.gz |
Match the implementation of the inline function from libkern.h.
Diffstat (limited to 'sys/libkern/memset.c')
-rw-r--r-- | sys/libkern/memset.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/sys/libkern/memset.c b/sys/libkern/memset.c index 39ad120..895e672 100644 --- a/sys/libkern/memset.c +++ b/sys/libkern/memset.c @@ -23,18 +23,22 @@ * SUCH DAMAGE. */ #include <sys/cdefs.h> -#include <sys/types.h> __FBSDID("$FreeBSD$"); -void *memset(void *, int, size_t); +#define LIBKERN_INLINE +#include <sys/types.h> +#include <sys/libkern.h> void * memset(void *b, int c, size_t len) { char *bb; - for (bb = (char *)b; len--; ) - *bb++ = c; + if (c == 0) + bzero(b, len); + else + for (bb = (char *)b; len--; ) + *bb++ = c; return (b); } |