chiark / gitweb /
[PATCH] sync with latest version of klibc (0.107)
[elogind.git] / klibc / klibc / strndup.c
1 /*
2  * strndup.c
3  */
4
5 #include <string.h>
6 #include <stdlib.h>
7
8 char *strndup(const char *s, size_t n)
9 {
10         int l = n > strlen(s) ? strlen(s)+1 : n+1;
11         char *d = malloc(l);
12
13         if (d)
14                 memcpy(d, s, l);
15         d[n] = '\0';
16         return d;
17 }