Tweaked a couple minor things.
[rsync/rsync.git] / options.c
index 4ed54d9..f7ef675 100644 (file)
--- a/options.c
+++ b/options.c
@@ -1249,7 +1249,6 @@ int parse_arguments(int *argc_p, const char ***argv_p, int frommain)
                else
                        need_unsorted_flist = 1;
        }
-       setup_iconv();
 #endif
 
        if (protect_args == 1) {
@@ -1682,7 +1681,8 @@ void server_options(char **args, int *argc_p)
                argstr[x++] = 'n';
        if (preserve_links)
                argstr[x++] = 'l';
-       if (xfer_dirs > (recurse || !delete_mode || !am_sender ? 1 : 0))
+       if ((list_only && !recurse) || xfer_dirs > 1
+        || (xfer_dirs && !recurse && delete_mode && am_sender))
                argstr[x++] = 'd';
        if (am_sender) {
                if (keep_dirlinks)
@@ -1752,12 +1752,6 @@ void server_options(char **args, int *argc_p)
        if (do_compression)
                argstr[x++] = 'z';
 
-       /* This is a complete hack - blame Rusty.  FIXME!
-        * This hack is only needed for older rsync versions that
-        * don't understand the --list-only option. */
-       if (list_only == 1 && !recurse)
-               argstr[x++] = 'r';
-
 #if SUBPROTOCOL_VERSION != 0
        /* If we're speaking a pre-release version of a protocol, we tell
         * the server about this by (ab)using the -e option. */