diff options
author | Kaleb S. KEITHLEY <kkeithle@redhat.com> | 2017-08-14 16:27:57 -0400 |
---|---|---|
committer | Niels de Vos <ndevos@redhat.com> | 2017-08-15 10:19:11 +0000 |
commit | 3f26a7ba8d74af3c2f1c149160124e91fac534f8 (patch) | |
tree | a60d9d8487d7e12e970cce930b4ccc33fcaa5bc3 | |
parent | b7b13c8cd295fa2e9fba9cc77211e576469e9581 (diff) |
api: memory leak in glfs_h_acl_get(), missing dict unref
master review https://review.gluster.org/17092 circa April 2017
Fix already exists in release-3.12 and release-3.11 branches
Hat tip to Shyam (srangana[at]redhat.com) who found the existing
fix after sitting and debugging it with me for several hours.
Reported-by: Kinglong Mee <mijinlong@open-fs.com>
Change-Id: Ic7169fd05aff7bf46108e8ac7b1f29688a7f2358
BUG: 1481398
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
Reviewed-on: https://review.gluster.org/18037
Smoke: Gluster Build System <jenkins@build.gluster.org>
Reviewed-by: Kinglong Mee <kinglongmee@gmail.com>
CentOS-regression: Gluster Build System <jenkins@build.gluster.org>
Reviewed-by: Prashanth Pai <ppai@redhat.com>
Reviewed-by: Niels de Vos <ndevos@redhat.com>
-rw-r--r-- | api/src/glfs-handleops.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/api/src/glfs-handleops.c b/api/src/glfs-handleops.c index a464b2ed195..b5fcfab713c 100644 --- a/api/src/glfs-handleops.c +++ b/api/src/glfs-handleops.c @@ -2297,13 +2297,15 @@ pub_glfs_h_acl_get (struct glfs *fs, struct glfs_object *object, goto out; ret = dict_get_str (xattr, (char *)acl_key, &acl_s); - if (ret == -1) + if (ret) goto out; acl = acl_from_text (acl_s); out: - GF_FREE (acl_s); + if (xattr) + dict_unref (xattr); + if (IA_ISLNK (object->inode->ia_type) && new_object) glfs_h_close (new_object); |