Make option variables a little clearer by using separate FOO_ndx
[rsync/rsync.git] / compat.c
index c5eee15..544bba7 100644 (file)
--- a/compat.c
+++ b/compat.c
@@ -31,6 +31,7 @@ extern int am_sender;
 extern int local_server;
 extern int inplace;
 extern int recurse;
+extern int use_qsort;
 extern int allow_inc_recurse;
 extern int fuzzy_basis;
 extern int read_batch;
@@ -55,6 +56,9 @@ extern char *partial_dir;
 extern char *dest_option;
 extern struct filter_list_struct filter_list;
 
+/* These index values are for the file-list's extra-attribute array. */
+int uid_ndx, gid_ndx, acls_ndx, xattrs_ndx;
+
 /* The server makes sure that if either side only supports a pre-release
  * version of a protocol, that both sides must speak a compatible version
  * of that protocol for it to be advertised as available. */
@@ -91,13 +95,13 @@ void setup_protocol(int f_out,int f_in)
        else
                file_extra_cnt++;
        if (preserve_uid)
-               preserve_uid = ++file_extra_cnt;
+               uid_ndx = ++file_extra_cnt;
        if (preserve_gid)
-               preserve_gid = ++file_extra_cnt;
+               gid_ndx = ++file_extra_cnt;
        if (preserve_acls && !am_sender)
-               preserve_acls = ++file_extra_cnt;
+               acls_ndx = ++file_extra_cnt;
        if (preserve_xattrs)
-               preserve_xattrs = ++file_extra_cnt;
+               xattrs_ndx = ++file_extra_cnt;
 
        if (remote_protocol == 0) {
                if (am_server && !local_server)
@@ -205,7 +209,7 @@ void setup_protocol(int f_out,int f_in)
        } else if (protocol_version >= 30) {
                if (recurse && allow_inc_recurse && !preserve_hard_links
                 && !delete_before && !delete_after && !delay_updates
-                && !prune_empty_dirs)
+                && !prune_empty_dirs && !use_qsort)
                        inc_recurse = 1;
                need_messages_from_generator = 1;
        }