diff options
Diffstat (limited to 'components')
| -rw-r--r-- | components/libc/compilers/newlib/minilib.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/components/libc/compilers/newlib/minilib.c b/components/libc/compilers/newlib/minilib.c index 2d07eabe5a..1210880b96 100644 --- a/components/libc/compilers/newlib/minilib.c +++ b/components/libc/compilers/newlib/minilib.c @@ -16,3 +16,16 @@ void * _sbrk_r(struct _reent *ptr, ptrdiff_t incr) /* no use this routine to get memory */ return RT_NULL; } + +#ifdef RT_USING_HEAP +char *strdup(const char *s) +{ + size_t len = strlen(s) + 1; + char *tmp = (char *)rt_malloc(len); + + if(!tmp) return NULL; + + rt_memcpy(tmp, s, len); + return tmp; +} +#endif /*RT_USING_HEAP*/ |
