diff options
| author | Zhang Haoyu | 2014-10-11 10:35:43 +0200 |
|---|---|---|
| committer | Kevin Wolf | 2014-10-20 13:41:26 +0200 |
| commit | d8bb71b6227366c188595b91c24a58c9b06e46dd (patch) | |
| tree | 99f9fdb03c991460ebcd7abe5de5899c5008b0e9 | |
| parent | glib: add compatibility interface for g_strcmp0() (diff) | |
| download | qemu-d8bb71b6227366c188595b91c24a58c9b06e46dd.tar.gz qemu-d8bb71b6227366c188595b91c24a58c9b06e46dd.tar.xz qemu-d8bb71b6227366c188595b91c24a58c9b06e46dd.zip | |
qcow2: fix leak of Qcow2DiscardRegion in update_refcount_discard
When the Qcow2DiscardRegion is adjacent to another one referenced by "d",
free this Qcow2DiscardRegion metadata referenced by "p" after
it was removed from s->discards queue.
Signed-off-by: Zhang Haoyu <zhanghy@sangfor.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
| -rw-r--r-- | block/qcow2-refcount.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/block/qcow2-refcount.c b/block/qcow2-refcount.c index 2bcaaf9b98..c31d85a840 100644 --- a/block/qcow2-refcount.c +++ b/block/qcow2-refcount.c @@ -524,6 +524,7 @@ found: QTAILQ_REMOVE(&s->discards, p, next); d->offset = MIN(d->offset, p->offset); d->bytes += p->bytes; + g_free(p); } } |
