From ba6e187f1e8e3c7017112b6273c9ace308f23bda Mon Sep 17 00:00:00 2001 From: John Ferlan Date: Fri, 28 Jun 2013 13:10:10 -0400 Subject: [PATCH] Resolve valgrind error in remoteConfigGetStringList() Commit id 'ed3bac71' introduced the following: TEST: libvirtdconftest ........................................ 40 OK ==25875== 690 (480 direct, 210 indirect) bytes in 30 blocks are definitely lost in loss record 18 of 24 ==25875== at 0x4A06B6F: calloc (vg_replace_malloc.c:593) ==25875== by 0x4C737DF: virAllocN (viralloc.c:152) ==25875== by 0x403BC8: remoteConfigGetStringList (libvirtd-config.c:74) ==25875== by 0x4042CF: daemonConfigLoadOptions (libvirtd-config.c:382) ==25875== by 0x4052F5: daemonConfigLoadData (libvirtd-config.c:479) ==25875== by 0x40222C: testCorrupt (libvirtdconftest.c:112) ==25875== by 0x40321F: virtTestRun (testutils.c:158) ==25875== by 0x401FEE: mymain (libvirtdconftest.c:228) ==25875== by 0x40385A: virtTestMain (testutils.c:722) ==25875== by 0x37C1021A04: (below main) (libc-start.c:225) ==25875== PASS: libvirtdconftest --- daemon/libvirtd-config.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/daemon/libvirtd-config.c b/daemon/libvirtd-config.c index 6f60256e47..017d47084e 100644 --- a/daemon/libvirtd-config.c +++ b/daemon/libvirtd-config.c @@ -316,6 +316,12 @@ daemonConfigFree(struct daemonConfig *data) VIR_FREE(data->listen_addr); VIR_FREE(data->tls_port); VIR_FREE(data->tcp_port); + tmp = data->access_drivers; + while (tmp && *tmp) { + VIR_FREE(*tmp); + tmp++; + } + VIR_FREE(data->access_drivers); VIR_FREE(data->unix_sock_ro_perms); VIR_FREE(data->unix_sock_rw_perms); -- GitLab