aboutsummaryrefslogtreecommitdiffstats
path: root/src/ChangeLog
diff options
context:
space:
mode:
authorPaul Eggert2014-08-27 11:56:47 -0700
committerPaul Eggert2014-08-27 11:56:47 -0700
commit110d87a1cc6a47e31ad9d70cc6366dd81d213860 (patch)
treed6b77b26ec0ce70df4684c0a859989ff426e3ef5 /src/ChangeLog
parent17d94f1ba4333a0d53558af02583dbf80e9157ff (diff)
downloademacs-110d87a1cc6a47e31ad9d70cc6366dd81d213860.tar.gz
emacs-110d87a1cc6a47e31ad9d70cc6366dd81d213860.zip
Improve robustness of new string-collation code.
* configure.ac (newlocale): Check for this, not for uselocale. * src/sysdep.c (LC_COLLATE, LC_COLLATE_MASK, freelocale, locale_t) (newlocale, wcscoll_l): Define substitutes for platforms that lack them, so as to simplify the mainline code. (str_collate): Simplify the code by assuming the above definitions. Use wcscoll_l, not uselocale, as uselocale is too fragile. For example, the old version left the Emacs in the wrong locale if wcscoll reported an error. Use 'int', not ptrdiff_t, for the int result. Report an error if newlocale fails. Fixes: debbugs:18051
Diffstat (limited to 'src/ChangeLog')
-rw-r--r--src/ChangeLog12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index d7066b823b9..8a32bc27b0b 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,15 @@
12014-08-27 Paul Eggert <eggert@cs.ucla.edu>
2
3 Improve robustness of new string-collation code (Bug#18051).
4 * sysdep.c (LC_COLLATE, LC_COLLATE_MASK, freelocale, locale_t)
5 (newlocale, wcscoll_l): Define substitutes for platforms that
6 lack them, so as to simplify the mainline code.
7 (str_collate): Simplify the code by assuming the above definitions.
8 Use wcscoll_l, not uselocale, as uselocale is too fragile. For
9 example, the old version left the Emacs in the wrong locale if
10 wcscoll reported an error. Use 'int', not ptrdiff_t, for the int
11 result. Report an error if newlocale fails.
12
12014-08-27 Michael Albinus <michael.albinus@gmx.de> 132014-08-27 Michael Albinus <michael.albinus@gmx.de>
2 14
3 * lisp.h (str_collate): 15 * lisp.h (str_collate):