Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2)

Unified Diff: fusl/src/locale/wcsxfrm.c

Issue 1573973002: Add a "fork" of musl as //fusl. (Closed) Base URL: https://github.com/domokit/mojo.git@master
Patch Set: Created 4 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « fusl/src/locale/wcscoll.c ('k') | fusl/src/malloc/DESIGN » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: fusl/src/locale/wcsxfrm.c
diff --git a/fusl/src/locale/wcsxfrm.c b/fusl/src/locale/wcsxfrm.c
new file mode 100644
index 0000000000000000000000000000000000000000..0a0b776dadf46aa65c91303dd43776b22c158679
--- /dev/null
+++ b/fusl/src/locale/wcsxfrm.c
@@ -0,0 +1,24 @@
+#include <wchar.h>
+#include <locale.h>
+#include "locale_impl.h"
+#include "libc.h"
+
+/* collate only by code points */
+size_t __wcsxfrm_l(wchar_t *restrict dest, const wchar_t *restrict src, size_t n, locale_t loc)
+{
+ size_t l = wcslen(src);
+ if (l < n) {
+ wmemcpy(dest, src, l+1);
+ } else if (n) {
+ wmemcpy(dest, src, n-1);
+ dest[n-1] = 0;
+ }
+ return l;
+}
+
+size_t wcsxfrm(wchar_t *restrict dest, const wchar_t *restrict src, size_t n)
+{
+ return __wcsxfrm_l(dest, src, n, CURRENT_LOCALE);
+}
+
+weak_alias(__wcsxfrm_l, wcsxfrm_l);
« no previous file with comments | « fusl/src/locale/wcscoll.c ('k') | fusl/src/malloc/DESIGN » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698