1*c9945492SAndroid Build Coastguard Worker #include <stdlib.h> 2*c9945492SAndroid Build Coastguard Worker #include <string.h> 3*c9945492SAndroid Build Coastguard Worker #include "locale_impl.h" 4*c9945492SAndroid Build Coastguard Worker #include "libc.h" 5*c9945492SAndroid Build Coastguard Worker 6*c9945492SAndroid Build Coastguard Worker #define malloc __libc_malloc 7*c9945492SAndroid Build Coastguard Worker #define calloc undef 8*c9945492SAndroid Build Coastguard Worker #define realloc undef 9*c9945492SAndroid Build Coastguard Worker #define free undef 10*c9945492SAndroid Build Coastguard Worker __duplocale(locale_t old)11*c9945492SAndroid Build Coastguard Workerlocale_t __duplocale(locale_t old) 12*c9945492SAndroid Build Coastguard Worker { 13*c9945492SAndroid Build Coastguard Worker locale_t new = malloc(sizeof *new); 14*c9945492SAndroid Build Coastguard Worker if (!new) return 0; 15*c9945492SAndroid Build Coastguard Worker if (old == LC_GLOBAL_LOCALE) old = &libc.global_locale; 16*c9945492SAndroid Build Coastguard Worker *new = *old; 17*c9945492SAndroid Build Coastguard Worker return new; 18*c9945492SAndroid Build Coastguard Worker } 19*c9945492SAndroid Build Coastguard Worker 20*c9945492SAndroid Build Coastguard Worker weak_alias(__duplocale, duplocale); 21