/* The use of these four functions was creating unwanted imports * from msvcrt.dll in kernel32.dll. */ #define malloc libwine_malloc #define free libwine_free #define realloc libwine_realloc #define _strdup libwine__strdup #include "debug.c" __MINGW_ATTRIB_MALLOC void * __cdecl malloc(size_t size) { return LocalAlloc(0, size); } void __cdecl free(void *ptr) { LocalFree(ptr); } void * __cdecl realloc(void *ptr, size_t size) { if (ptr == NULL) return malloc(size); return LocalReAlloc(ptr, size, LMEM_MOVEABLE); } __MINGW_ATTRIB_MALLOC char * __cdecl _strdup(const char *str) { char *newstr = malloc(strlen(str) + 1); if (newstr) strcpy(newstr, str); return newstr; }