diff options
author | Corinna Vinschen <corinna@vinschen.de> | 2009-05-15 15:30:18 +0400 |
---|---|---|
committer | Corinna Vinschen <corinna@vinschen.de> | 2009-05-15 15:30:18 +0400 |
commit | 73535010d72d1a7d46e4f5c6c98f41fab90df489 (patch) | |
tree | c704e4155e42372132a39c6f4fbc5d4cc31afda0 /winsup/utils/cygpath.cc | |
parent | a972ea99d54c5834eb0bd8d5e40e1045d2e21d3f (diff) |
* cygpath.cc (main): Only setlocale for LC_CTYPE category. Fallback
to UTF-8 if locale is "C".
* ldd.cc (main): Ditto.
* mkgroup.c (main): Ditto.
* mkpasswd.c (main): Ditto.
* passwd.c (main): Ditto.
Diffstat (limited to 'winsup/utils/cygpath.cc')
-rw-r--r-- | winsup/utils/cygpath.cc | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/winsup/utils/cygpath.cc b/winsup/utils/cygpath.cc index ade86f7f2..c993ccd0a 100644 --- a/winsup/utils/cygpath.cc +++ b/winsup/utils/cygpath.cc @@ -982,7 +982,10 @@ main (int argc, char **argv) { int o; - setlocale (LC_ALL, ""); + /* Use locale from environment. If not set or set to "C", use UTF-8. */ + setlocale (LC_CTYPE, ""); + if (!strcmp (setlocale (LC_CTYPE, NULL), "C")) + setlocale (LC_CTYPE, "en_US.UTF-8"); prog_name = strrchr (argv[0], '/'); if (!prog_name) prog_name = strrchr (argv[0], '\\'); |