On Thu, Jun 02, 2011 at 05:24:25PM -0600, Eric Blake wrote: > Coverity couldn't see that priv is clean on failure. But on failure, > we might as well guarantee that callers don't try to free uninitialized > memory. > > * src/remote/remote_driver.c (remoteGenericOpen): Even on failure, > pass priv back to caller. > --- > > In reading my own mail, I decided that patch 10 can be made simpler. > > v2: rewrite to avoid sa_assert and be more robust. > > src/remote/remote_driver.c | 6 ++---- > 1 files changed, 2 insertions(+), 4 deletions(-) > > diff --git a/src/remote/remote_driver.c b/src/remote/remote_driver.c > index 14c3d24..8335a1a 100644 > --- a/src/remote/remote_driver.c > +++ b/src/remote/remote_driver.c > @@ -2545,10 +2545,8 @@ remoteGenericOpen(virConnectPtr conn, virConnectAuthPtr auth, > * use the UNIX transport. This handles Xen driver > * which doesn't have its own impl of the network APIs. */ > struct private_data *priv; > - int ret; > - ret = remoteOpenSecondaryDriver(conn, auth, flags, &priv); > - if (ret == VIR_DRV_OPEN_SUCCESS) > - *genericPrivateData = priv; > + int ret = remoteOpenSecondaryDriver(conn, auth, flags, &priv); > + *genericPrivateData = priv; > return ret; > } > } I really prefer the second version, ACK Daniel -- Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/ daniel@xxxxxxxxxxxx | Rpmfind RPM search engine http://rpmfind.net/ http://veillard.com/ | virtualization library http://libvirt.org/ -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list