iconv: fix missing bounds checking for shift_jis decoding
[musl.git] / src / string / strndup.c
blob617d27ba9e65ba384fa97433e90b1632015ee998
1 #include <stdlib.h>
2 #include <string.h>
4 char *strndup(const char *s, size_t n)
6 size_t l = strnlen(s, n);
7 char *d = malloc(l+1);
8 if (!d) return NULL;
9 memcpy(d, s, l);
10 d[l] = 0;
11 return d;