mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-01-21 12:05:17 +00:00
conf: Plug memory leaks on virDomainDiskDefParseXML
Detected by valgrind. Leaks are introduced in commit b22eaa7. * src/conf/domain_conf.c (virDomainDiskDefParseXML): fix memory leaks. How to reproduce? % make && make -C tests check TESTS=qemuxml2argvtest % cd tests && valgrind -v --leak-check=full ./qemuxml2argvtest actual result: ==2143== 12 bytes in 2 blocks are definitely lost in loss record 74 of 179 ==2143== at 0x4A05FDE: malloc (vg_replace_malloc.c:236) ==2143== by 0x39D90A67DD: xmlStrndup (xmlstring.c:45) ==2143== by 0x4F5EC0: virDomainDiskDefParseXML (domain_conf.c:3438) ==2143== by 0x502F00: virDomainDefParseXML (domain_conf.c:8304) ==2143== by 0x505FE3: virDomainDefParseNode (domain_conf.c:9080) ==2143== by 0x5069AE: virDomainDefParse (domain_conf.c:9030) ==2143== by 0x41CBF4: testCompareXMLToArgvHelper (qemuxml2argvtest.c:105) ==2143== by 0x41E5DD: virtTestRun (testutils.c:145) ==2143== by 0x416FA3: mymain (qemuxml2argvtest.c:399) ==2143== by 0x41DCB7: virtTestMain (testutils.c:700) ==2143== by 0x39CF01ECDC: (below main) (libc-start.c:226) Signed-off-by: Alex Jia <ajia@redhat.com> (cherry picked from commit 80d476a92ff0b5c2db00fdf37842757f45e30560)
This commit is contained in:
parent
2bfb07cb05
commit
a6c441662d
@ -3893,6 +3893,7 @@ cleanup:
|
||||
VIR_FREE(rawio);
|
||||
VIR_FREE(target);
|
||||
VIR_FREE(source);
|
||||
VIR_FREE(tray);
|
||||
while (nhosts > 0) {
|
||||
virDomainDiskHostDefFree(&hosts[nhosts - 1]);
|
||||
nhosts--;
|
||||
|
Loading…
x
Reference in New Issue
Block a user