From: Michal Privoznik Date: Fri, 4 Aug 2017 13:06:39 +0000 (+0200) Subject: virDomainDefFree: Don't leak initenv name and value X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=5619c93ce7b8de9ee34623981c06a8d7eac23e16;p=libvirt.git virDomainDefFree: Don't leak initenv name and value When parsing boot options from domain XML in virDomainDefParseBootOptions() initenv id stored to: def->os.initenv[i]->name def->os.initenv[i]->value But these are never freed. Signed-off-by: Michal Privoznik --- diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 640f29d3ed..8168dc52fa 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -2931,8 +2931,11 @@ void virDomainDefFree(virDomainDefPtr def) for (i = 0; def->os.initargv && def->os.initargv[i]; i++) VIR_FREE(def->os.initargv[i]); VIR_FREE(def->os.initargv); - for (i = 0; def->os.initenv && def->os.initenv[i]; i++) + for (i = 0; def->os.initenv && def->os.initenv[i]; i++) { + VIR_FREE(def->os.initenv[i]->name); + VIR_FREE(def->os.initenv[i]->value); VIR_FREE(def->os.initenv[i]); + } VIR_FREE(def->os.initdir); VIR_FREE(def->os.inituser); VIR_FREE(def->os.initgroup);