aboutsummaryrefslogtreecommitdiffstats
path: root/src/sysdep.c
diff options
context:
space:
mode:
authorMichael Albinus2014-08-29 23:19:45 +0200
committerMichael Albinus2014-08-29 23:19:45 +0200
commitfb6cdfc0f0692ead110ecd80df52f894fca8fb50 (patch)
treec95414bf0553b291a41eacac4091c51904264263 /src/sysdep.c
parente6a4c15ff1a2dad24eb695d0f9f1e63398aadf9f (diff)
downloademacs-fb6cdfc0f0692ead110ecd80df52f894fca8fb50.tar.gz
emacs-fb6cdfc0f0692ead110ecd80df52f894fca8fb50.zip
* sysdep.c (str_collate) [__STDC_ISO_10646__]: Move up setting errno.
Diffstat (limited to 'src/sysdep.c')
-rw-r--r--src/sysdep.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/sysdep.c b/src/sysdep.c
index d36f5b29b08..e1da2f87eb2 100644
--- a/src/sysdep.c
+++ b/src/sysdep.c
@@ -3740,6 +3740,8 @@ str_collate (Lisp_Object s1, Lisp_Object s2,
3740 FETCH_STRING_CHAR_ADVANCE (*(p2+i-1), s2, i, i_byte); 3740 FETCH_STRING_CHAR_ADVANCE (*(p2+i-1), s2, i, i_byte);
3741 *(p2+len) = 0; 3741 *(p2+len) = 0;
3742 3742
3743 errno = 0;
3744
3743 if (STRINGP (locale)) 3745 if (STRINGP (locale))
3744 { 3746 {
3745 locale_t loc = newlocale (LC_COLLATE_MASK | LC_CTYPE_MASK, 3747 locale_t loc = newlocale (LC_COLLATE_MASK | LC_CTYPE_MASK,
@@ -3761,7 +3763,6 @@ str_collate (Lisp_Object s1, Lisp_Object s2,
3761 } 3763 }
3762 else 3764 else
3763 { 3765 {
3764 errno = 0;
3765 if (! NILP (ignore_case)) 3766 if (! NILP (ignore_case))
3766 for (int i = 1; i < 3; i++) 3767 for (int i = 1; i < 3; i++)
3767 { 3768 {
@@ -3769,6 +3770,7 @@ str_collate (Lisp_Object s1, Lisp_Object s2,
3769 for (; *p; p++) 3770 for (; *p; p++)
3770 *p = towlower (*p); 3771 *p = towlower (*p);
3771 } 3772 }
3773
3772 res = wcscoll (p1, p2); 3774 res = wcscoll (p1, p2);
3773 err = errno; 3775 err = errno;
3774 } 3776 }