]> git.ipfire.org Git - thirdparty/libvirt.git/commit
util: storage: Don't leak metadata on repeated calls of virStorageFileGetMetadata
authorPeter Krempa <pkrempa@redhat.com>
Thu, 18 Jul 2019 14:32:44 +0000 (16:32 +0200)
committerPeter Krempa <pkrempa@redhat.com>
Thu, 18 Jul 2019 15:54:22 +0000 (17:54 +0200)
commitf0430d069af991475de6fa83ed62a45f8669c645
treebaabb4f5e9424fae824a06cd287778f1c4563788
parent5b8e64f0bcbbab826cff5be1b0adb000923abfb4
util: storage: Don't leak metadata on repeated calls of virStorageFileGetMetadata

When querying storage metadata after a block job we re-run
virStorageFileGetMetadata on the top level storage file. This means that
the workers (virStorageFileGetMetadataInternal) must not overwrite any
pointers without freeing them.

This was not considered for src->compat and src->features. Fix it and
add a comment mentioning that.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
src/util/virstoragefile.c