| … | |
… | |
| 2087 | +numcompare_uni (const char *a, const char *b) |
2087 | +numcompare_uni (const char *a, const char *b) |
| 2088 | { |
2088 | { |
| 2089 | while (blanks[to_uchar (*a)]) |
2089 | while (blanks[to_uchar (*a)]) |
| 2090 | a++; |
2090 | a++; |
| 2091 | @@ -1510,6 +1813,25 @@ |
2091 | @@ -1510,6 +1813,25 @@ |
| 2092 | return strnumcmp (a, b, decimal_point, thousands_sep); |
2092 | : strnumcmp (a, b, decimal_point, thousands_sep)); |
| 2093 | } |
2093 | } |
| 2094 | |
2094 | |
| 2095 | +#if HAVE_MBRTOWC |
2095 | +#if HAVE_MBRTOWC |
| 2096 | +static int |
2096 | +static int |
| 2097 | +numcompare_mb (const char *a, const char *b) |
2097 | +numcompare_mb (const char *a, const char *b) |
| … | |
… | |
| 2200 | |
2200 | |
| 2201 | static int |
2201 | static int |
| 2202 | -keycompare (const struct line *a, const struct line *b) |
2202 | -keycompare (const struct line *a, const struct line *b) |
| 2203 | +keycompare_uni (const struct line *a, const struct line *b) |
2203 | +keycompare_uni (const struct line *a, const struct line *b) |
| 2204 | { |
2204 | { |
| 2205 | struct keyfield const *key = keylist; |
2205 | struct keyfield *key = keylist; |
| 2206 | |
2206 | |
| 2207 | @@ -1875,6 +2265,181 @@ |
2207 | @@ -1875,6 +2265,181 @@ |
| 2208 | return key->reverse ? -diff : diff; |
2208 | return key->reverse ? -diff : diff; |
| 2209 | } |
2209 | } |
| 2210 | |
2210 | |