diff options
| -rw-r--r-- | api/src/glfs-fops.c | 15 | 
1 files changed, 10 insertions, 5 deletions
diff --git a/api/src/glfs-fops.c b/api/src/glfs-fops.c index 2ff1c8cc89d..4437ebf3d29 100644 --- a/api/src/glfs-fops.c +++ b/api/src/glfs-fops.c @@ -3132,8 +3132,6 @@ glfs_getxattr_process (void *value, size_t size, dict_t *xattr,  	memcpy (value, data->data, ret);  out: -	if (xattr) -		dict_unref (xattr);  	return ret;  } @@ -3194,6 +3192,9 @@ retry:  out:  	loc_wipe (&loc); +        if (xattr) +                dict_unref (xattr); +  	glfs_subvol_done (fs, subvol);          __GLFS_EXIT_FS; @@ -3274,6 +3275,8 @@ out:  		fd_unref (fd);          if (glfd)                  GF_REF_PUT (glfd); +        if (xattr) +                dict_unref (xattr);  	glfs_subvol_done (glfd->fs, subvol); @@ -3307,9 +3310,6 @@ glfs_listxattr_process (void *value, size_t size, dict_t *xattr)  	}  out: -        if (xattr) -                dict_unref (xattr); -  	return ret;  } @@ -3358,6 +3358,9 @@ retry:  out:  	loc_wipe (&loc); +        if (xattr) +                dict_unref (xattr); +  	glfs_subvol_done (fs, subvol);          __GLFS_EXIT_FS; @@ -3423,6 +3426,8 @@ out:  		fd_unref (fd);          if (glfd)                  GF_REF_PUT (glfd); +        if (xattr) +                dict_unref (xattr);  	glfs_subvol_done (glfd->fs, subvol);  | 
