From 284c28c77374cb8ceb41f51f7382b94bd24a2a0d Mon Sep 17 00:00:00 2001 From: Wayne Davison Date: Mon, 13 Jul 2020 13:43:17 -0700 Subject: [PATCH] Add new code to recv_group_name() too. --- uidlist.c | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) 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; -- 2.47.2