diff options
author | Yaniv Kaul <ykaul@redhat.com> | 2020-01-12 16:33:54 +0200 |
---|---|---|
committer | Xavi Hernandez <xhernandez@redhat.com> | 2020-01-21 12:28:07 +0000 |
commit | 44602465081ea5fb38255ad68d3ed8e987190d1f (patch) | |
tree | dd7bd780490f98406315a2834cc647841076ac8c /xlators/protocol/client | |
parent | 3aa0928623393aa9c296abf32d4726d02a454207 (diff) |
dictionary: remove the 'extra_free' parameter
This parameter may have been used in the past, but is no longer
needed. Removing it and the few locations it was actually referenced.
This allows to remove an extra memdup as well, that was not needed
in the 1st place in server_setvolume() and unserialize_rsp_direntp()
functions.
A followup separate patch will remove extra_stdfree parmeter
from the dictionary structure.
Change-Id: Ica0ff0a330672373aaa60e808b7e76ec489a0fe3
updates: bz#1193929
Signed-off-by: Yaniv Kaul <ykaul@redhat.com>
Diffstat (limited to 'xlators/protocol/client')
-rw-r--r-- | xlators/protocol/client/src/client-helpers.c | 15 |
1 files changed, 4 insertions, 11 deletions
diff --git a/xlators/protocol/client/src/client-helpers.c b/xlators/protocol/client/src/client-helpers.c index 156f1cd3d9b..e49647faa6f 100644 --- a/xlators/protocol/client/src/client-helpers.c +++ b/xlators/protocol/client/src/client-helpers.c @@ -175,7 +175,6 @@ unserialize_rsp_direntp(xlator_t *this, fd_t *fd, struct gfs3_readdirp_rsp *rsp, gf_dirent_t *entries) { struct gfs3_dirplist *trav = NULL; - char *buf = NULL; gf_dirent_t *entry = NULL; inode_table_t *itable = NULL; int entry_len = 0; @@ -207,22 +206,18 @@ unserialize_rsp_direntp(xlator_t *this, fd_t *fd, struct gfs3_readdirp_rsp *rsp, strcpy(entry->d_name, trav->name); if (trav->dict.dict_val) { - /* Dictionary is sent along with response */ - buf = gf_memdup(trav->dict.dict_val, trav->dict.dict_len); - if (!buf) - goto out; - entry->dict = dict_new(); + if (!entry->dict) + goto out; - ret = dict_unserialize(buf, trav->dict.dict_len, &entry->dict); + ret = dict_unserialize(trav->dict.dict_val, trav->dict.dict_len, + &entry->dict); if (ret < 0) { gf_msg(THIS->name, GF_LOG_WARNING, EINVAL, PC_MSG_DICT_UNSERIALIZE_FAIL, "failed to unserialize xattr dict"); goto out; } - GF_FREE(buf); - buf = NULL; } entry->inode = inode_find(itable, entry->d_stat.ia_gfid); @@ -237,8 +232,6 @@ unserialize_rsp_direntp(xlator_t *this, fd_t *fd, struct gfs3_readdirp_rsp *rsp, ret = 0; out: - if (buf) - GF_FREE(buf); if (entry) gf_dirent_entry_free(entry); return ret; |