From: Wayne Davison Date: Mon, 13 Jul 2020 20:43:17 +0000 (-0700) Subject: Add new code to recv_group_name() too. X-Git-Tag: v3.2.3pre1~80 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=284c28c77374cb8ceb41f51f7382b94bd24a2a0d;p=thirdparty%2Frsync.git Add new code to recv_group_name() too. --- diff --git a/uidlist.c b/uidlist.c index 6e9bb3c1..4506de2e 100644 --- a/uidlist.c +++ b/uidlist.c @@ -390,12 +390,18 @@ gid_t recv_group_name(int f, gid_t gid, uint16 *flags_ptr) { struct idlist *node; int len = read_byte(f); - char *name = new_array(char, len+1); - read_sbuf(f, name, len); - if (numeric_ids < 0) { - free(name); + char *name; + + if (len) { + name = new_array(char, len+1); + read_sbuf(f, name, len); + if (numeric_ids < 0) { + free(name); + name = NULL; + } + } else name = NULL; - } + node = recv_add_id(&gidlist, gidmap, gid, name); /* node keeps name's memory */ if (flags_ptr && node->flags & FLAG_SKIP_GROUP) *flags_ptr |= FLAG_SKIP_GROUP;