xref: /aosp_15_r20/external/musl/src/locale/strxfrm.c (revision c9945492fdd68bbe62686c5b452b4dc1be3f8453)
1*c9945492SAndroid Build Coastguard Worker #include <string.h>
2*c9945492SAndroid Build Coastguard Worker #include <locale.h>
3*c9945492SAndroid Build Coastguard Worker #include "locale_impl.h"
4*c9945492SAndroid Build Coastguard Worker 
5*c9945492SAndroid Build Coastguard Worker /* collate only by code points */
__strxfrm_l(char * restrict dest,const char * restrict src,size_t n,locale_t loc)6*c9945492SAndroid Build Coastguard Worker size_t __strxfrm_l(char *restrict dest, const char *restrict src, size_t n, locale_t loc)
7*c9945492SAndroid Build Coastguard Worker {
8*c9945492SAndroid Build Coastguard Worker 	size_t l = strlen(src);
9*c9945492SAndroid Build Coastguard Worker 	if (n > l) strcpy(dest, src);
10*c9945492SAndroid Build Coastguard Worker 	return l;
11*c9945492SAndroid Build Coastguard Worker }
12*c9945492SAndroid Build Coastguard Worker 
strxfrm(char * restrict dest,const char * restrict src,size_t n)13*c9945492SAndroid Build Coastguard Worker size_t strxfrm(char *restrict dest, const char *restrict src, size_t n)
14*c9945492SAndroid Build Coastguard Worker {
15*c9945492SAndroid Build Coastguard Worker 	return __strxfrm_l(dest, src, n, CURRENT_LOCALE);
16*c9945492SAndroid Build Coastguard Worker }
17*c9945492SAndroid Build Coastguard Worker 
18*c9945492SAndroid Build Coastguard Worker weak_alias(__strxfrm_l, strxfrm_l);
19