diff options
author | Kevin Wolf <kwolf@redhat.com> | 2014-02-07 15:29:00 +0100 |
---|---|---|
committer | Kevin Wolf <kwolf@redhat.com> | 2014-02-09 09:12:39 +0100 |
commit | 99c4a85ce65863e6ba6668164d47c0d7c645e3aa (patch) | |
tree | f54ea13923faad1dfd1648355b9db07cc3a7a53c | |
parent | ad6aef43d36fe65701ff84193576d7f3dcb82dc5 (diff) | |
download | hqemu-99c4a85ce65863e6ba6668164d47c0d7c645e3aa.zip hqemu-99c4a85ce65863e6ba6668164d47c0d7c645e3aa.tar.gz |
block: Fix memory leaks in bdrv_co_do_pwritev()
The error path for a failure in one of the two bdrv_aligned_preadv()
calls leaked head_buf or tail_buf, respectively. This fixes the memory
leak.
Reported-by: Laszlo Ersek <lersek@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Reviewed-by: Laszlo Ersek <lersek@redhat.com>
-rw-r--r-- | block.c | 4 |
1 files changed, 2 insertions, 2 deletions
@@ -3279,9 +3279,9 @@ fail: if (use_local_qiov) { qemu_iovec_destroy(&local_qiov); - qemu_vfree(head_buf); - qemu_vfree(tail_buf); } + qemu_vfree(head_buf); + qemu_vfree(tail_buf); return ret; } |