diff --git a/src/pike_memory.c b/src/pike_memory.c index 5a4ef44aa90021573885a645cfc39da28ccba9dd..2b477350e01e1f6013938519104978a7ba75e462 100644 --- a/src/pike_memory.c +++ b/src/pike_memory.c @@ -20,6 +20,23 @@ char *xalloc(SIZE_T size) return 0; } +/* strdup() is used by several modules, so let's provide it */ +#ifndef HAVE_STRDUP +char *strdup(const char *str) +{ + char *res = NULL; + if (str) { + int len = strlen(str)+1; + + res = xalloc(len); + if (res) { + MEMCPY(res, str, len); + } + } + return(res); +} +#endif /* !HAVE_STRDUP */ + void swap(char *a, char *b, INT32 size) { int tmp;