WebKit sets a custom xslt sort function with the expectation that libxslt passes
strings directly from the input. If locale support is enabled, libxslt will
transform the string using into something WebKit does not expect. This will
break third_party/WebKit/LayoutTests/fast/xsl/sort-locale.xml. By disabling
POSIX and Windows locale support, we preserve the behavior WebKit expects in
XsltUnicodeSortFunction.
In addition, it would seem that strxfrm_l is not supported on Fuchsia as using
it without this patch causes a compile error.
diff --git a/libxslt/xsltlocale.c b/libxslt/xsltlocale.c
index 5a929188..9324f284 100644
--- a/libxslt/xsltlocale.c
+++ b/libxslt/xsltlocale.c
@@ -19,29 +19,7 @@
#include "xsltlocale.h"
#include "xsltutils.h"
-#ifdef HAVE_STRXFRM_L
-
- #define XSLT_LOCALE_POSIX
-
- #ifdef HAVE_LOCALE_H
- #include <locale.h>
- #endif
- #ifdef HAVE_XLOCALE_H
- #include <xlocale.h>
- #endif
-
-#elif defined(_WIN32)
-
- #define XSLT_LOCALE_WINAPI
-
- #include <windows.h>
- #include <winnls.h>
-
-#else
-
- #define XSLT_LOCALE_NONE
-
-#endif
+#define XSLT_LOCALE_NONE
#define TOUPPER(c) (c & ~0x20)
#define TOLOWER(c) (c | 0x20)