From: Yan, Zheng Date: Fri, 16 Jan 2015 02:16:44 +0000 (+0800) Subject: client: fix getting zero-length xattr X-Git-Tag: v0.93~274^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=refs%2Fpull%2F3383%2Fhead;p=ceph.git client: fix getting zero-length xattr Fixes: #10552 Signed-off-by: Yan, Zheng --- diff --git a/src/client/Client.cc b/src/client/Client.cc index bd7c5caf57f9..e62ab1f816d3 100644 --- a/src/client/Client.cc +++ b/src/client/Client.cc @@ -8377,7 +8377,7 @@ int Client::_getxattr(Inode *in, const char *name, void *value, size_t size, r = -ENODATA; if (in->xattrs.count(n)) { r = in->xattrs[n].length(); - if (size != 0) { + if (r > 0 && size != 0) { if (size >= (unsigned)r) memcpy(value, in->xattrs[n].c_str(), r); else