|
@@ -4436,14 +4436,14 @@ static int send_hole(struct send_ctx *sctx, u64 end)
|
|
|
p = fs_path_alloc();
|
|
|
if (!p)
|
|
|
return -ENOMEM;
|
|
|
+ ret = get_cur_path(sctx, sctx->cur_ino, sctx->cur_inode_gen, p);
|
|
|
+ if (ret < 0)
|
|
|
+ goto tlv_put_failure;
|
|
|
memset(sctx->read_buf, 0, BTRFS_SEND_READ_SIZE);
|
|
|
while (offset < end) {
|
|
|
len = min_t(u64, end - offset, BTRFS_SEND_READ_SIZE);
|
|
|
|
|
|
ret = begin_cmd(sctx, BTRFS_SEND_C_WRITE);
|
|
|
- if (ret < 0)
|
|
|
- break;
|
|
|
- ret = get_cur_path(sctx, sctx->cur_ino, sctx->cur_inode_gen, p);
|
|
|
if (ret < 0)
|
|
|
break;
|
|
|
TLV_PUT_PATH(sctx, BTRFS_SEND_A_PATH, p);
|