diff -ru rsync-3.0.7.orig/acls.c rsync-3.0.7/acls.c --- rsync-3.0.7.orig/acls.c 2011-03-18 16:33:10.000000000 +0800 +++ rsync-3.0.7/acls.c 2011-03-18 16:37:10.000000000 +0800 @@ -696,10 +696,14 @@ uint32 access = recv_acl_access(&has_name, f); if (has_name) { + int id_orig = id; if (access & NAME_IS_USER) id = recv_user_name(f, id); else id = recv_group_name(f, id, NULL); + //don't map uid/gid when --numeric-ids option is set + if (numeric_ids) + id = id_orig; } else if (access & NAME_IS_USER) { if (inc_recurse && am_root && !numeric_ids) id = match_uid(id);