diff --git a/fs/hmdfs/hmdfs_client.c b/fs/hmdfs/hmdfs_client.c index 31c1a6d38e8fa4c228f695808e135fce4fa5b123..02f33b93dd04c550406a4a1c99c13c517613b7a3 100644 --- a/fs/hmdfs/hmdfs_client.c +++ b/fs/hmdfs/hmdfs_client.c @@ -900,10 +900,11 @@ int hmdfs_send_setxattr(struct hmdfs_peer *con, const char *send_buf, req->flags = cpu_to_le32(flags); strncpy(req->buf, send_buf, path_len); strncpy(req->buf + path_len + 1, name, name_len); - if (!value) { - memcpy(req->buf + path_len + name_len + 2, value, size); + if (!value) req->del = true; - } + else + memcpy(req->buf + path_len + name_len + 2, value, size); + ret = hmdfs_sendmessage_request(con, &sm); kfree(req); return ret;