libxl_migration: Resolve Coverity RESOURCE_LEAK

In libxlDomainMigrationPrepare() if the uri_in is false, then
'hostname' is allocated and used "generically" in the routine,
but not freed.  Conversely, if uri_in is true, then a uri is
allocated and hostname is set to the uri->hostname value and
likewise generically used.

At function exit, hostname wasn't free'd in the !uri_in path,
so that was added.  To just make it clearer on usage the else
path became the call to virURIFree() although I suppose technically
it didn't have to since it would be a call using (NULL)
This commit is contained in:
John Ferlan 2014-08-27 15:22:33 -04:00
parent 2a4e26bdc1
commit ad4966d91a

View File

@ -412,7 +412,10 @@ libxlDomainMigrationPrepare(virConnectPtr dconn,
}
done:
virURIFree(uri);
if (!uri_in)
VIR_FREE(hostname);
else
virURIFree(uri);
if (vm)
virObjectUnlock(vm);
return ret;