An easy way to run all the commands in prepare-source.mak.
[rsync/rsync.git] / rsync.c
diff --git a/rsync.c b/rsync.c
index 2a2505a..8595d51 100644 (file)
--- a/rsync.c
+++ b/rsync.c
@@ -50,7 +50,7 @@ extern int keep_dirlinks;
 extern int make_backups;
 extern struct stats stats;
 
-#ifdef HAVE_ICONV_OPEN
+#if defined HAVE_ICONV_OPEN && defined HAVE_ICONV_H
 iconv_t ic_chck = (iconv_t)-1;
 
 static char *default_charset(void)
@@ -58,7 +58,10 @@ static char *default_charset(void)
 #if defined HAVE_LIBCHARSET_H && defined HAVE_LOCALE_CHARSET
        return locale_charset();
 #elif defined HAVE_LANGINFO_H && defined HAVE_NL_LANGINFO
-       return nl_langinfo(CODESET);
+       char *def = nl_langinfo(CODESET);
+       if (strcmp(def, "646") == 0) /* Solaris brain-damage */
+               return "ascii";
+       return def;
 #else
        return ""; /* Works with (at the very least) gnu iconv... */
 #endif