diff options
Diffstat (limited to 'api')
| -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 cc972a41e7c..55474693731 100644 --- a/api/src/glfs-fops.c +++ b/api/src/glfs-fops.c @@ -3022,8 +3022,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;  } @@ -3084,6 +3082,9 @@ retry:  out:  	loc_wipe (&loc); +        if (xattr) +                dict_unref (xattr); +  	glfs_subvol_done (fs, subvol);          __GLFS_EXIT_FS; @@ -3164,6 +3165,8 @@ out:  		fd_unref (fd);          if (glfd)                  GF_REF_PUT (glfd); +        if (xattr) +                dict_unref (xattr);  	glfs_subvol_done (glfd->fs, subvol); @@ -3197,9 +3200,6 @@ glfs_listxattr_process (void *value, size_t size, dict_t *xattr)  	}  out: -        if (xattr) -                dict_unref (xattr); -  	return ret;  } @@ -3248,6 +3248,9 @@ retry:  out:  	loc_wipe (&loc); +        if (xattr) +                dict_unref (xattr); +  	glfs_subvol_done (fs, subvol);          __GLFS_EXIT_FS; @@ -3313,6 +3316,8 @@ out:  		fd_unref (fd);          if (glfd)                  GF_REF_PUT (glfd); +        if (xattr) +                dict_unref (xattr);  	glfs_subvol_done (glfd->fs, subvol);  | 
