Added RERR_VANISHED.
[rsync/rsync.git] / options.c
index d329f35..85880ca 100644 (file)
--- a/options.c
+++ b/options.c
@@ -657,8 +657,11 @@ int parse_arguments(int *argc, const char ***argv, int frommain)
                        usage(FERROR);
                        exit_cleanup(RERR_SYNTAX);
                }
-               if (strcmp(files_from, "-") == 0)
+               if (strcmp(files_from, "-") == 0) {
                        filesfrom_fd = 0;
+                       if (am_server)
+                               remote_filesfrom_file = "-";
+               }
                else if ((colon = find_colon(files_from)) != 0) {
                        if (am_server) {
                                usage(FERROR);
@@ -825,7 +828,7 @@ void server_options(char **args,int *argc)
 
        /* Only send --suffix if it specifies a non-default value. */
        if (strcmp(backup_suffix, backup_dir? "" : BACKUP_SUFFIX) != 0) {
-               char *s = malloc(9+backup_suffix_len+1);
+               char *s = new_array(char, 9+backup_suffix_len+1);
                if (!s)
                        out_of_memory("server_options");
                /* We use the following syntax to avoid weirdness with '~'. */