diff options
Diffstat (limited to 'lib')
-rwxr-xr-x | lib/modules/iconv.c | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/lib/modules/iconv.c b/lib/modules/iconv.c index e04e7a9..76e2f7d 100755 --- a/lib/modules/iconv.c +++ b/lib/modules/iconv.c @@ -638,10 +638,15 @@ static const struct fuse_opt iconv_opts[] = { static void iconv_help(void) { - char *old = strdup(setlocale(LC_CTYPE, "")); - char *charmap = strdup(nl_langinfo(CODESET)); - setlocale(LC_CTYPE, old); - free(old); + char *charmap; + const char *old = setlocale(LC_CTYPE, ""); + + charmap = strdup(nl_langinfo(CODESET)); + if (old) + setlocale(LC_CTYPE, old); + else + perror("setlocale"); + printf( " -o from_code=CHARSET original encoding of file names (default: UTF-8)\n" " -o to_code=CHARSET new encoding of the file names (default: %s)\n", |