On 03/06/2013 06:59 AM, Jiri Denemark wrote: > This also renames cleanup label as error since it is only used for error > path rather then being common for both success and error paths. > --- > src/storage/storage_backend_logical.c | 15 ++++++++------- > 1 file changed, 8 insertions(+), 7 deletions(-) > > diff --git a/src/storage/storage_backend_logical.c b/src/storage/storage_backend_logical.c > index bb709df..e3b3de4 100644 > --- a/src/storage/storage_backend_logical.c > +++ b/src/storage/storage_backend_logical.c > @@ -741,10 +741,10 @@ virStorageBackendLogicalCreateVol(virConnectPtr conn, > virCommandAddArg(cmd, pool->def->source.name); > > if (virCommandRun(cmd, NULL) < 0) > - goto cleanup; > + goto error; > > if ((fdret = virStorageBackendVolOpen(vol->target.path)) < 0) > - goto cleanup; > + goto error; > fd = fdret; > > /* We can only chown/grp if root */ > @@ -753,21 +753,21 @@ virStorageBackendLogicalCreateVol(virConnectPtr conn, > virReportSystemError(errno, > _("cannot set file owner '%s'"), > vol->target.path); > - goto cleanup; > + goto error; > } > } > if (fchmod(fd, vol->target.perms.mode) < 0) { > virReportSystemError(errno, > _("cannot set file mode '%s'"), > vol->target.path); > - goto cleanup; > + goto error; > } > > if (VIR_CLOSE(fd) < 0) { > virReportSystemError(errno, > _("cannot close file '%s'"), > vol->target.path); > - goto cleanup; > + goto error; > } > fd = -1; > > @@ -776,17 +776,18 @@ virStorageBackendLogicalCreateVol(virConnectPtr conn, > virReportSystemError(errno, > _("cannot find newly created volume '%s'"), > vol->target.path); > - goto cleanup; > + goto error; > } > > return 0; Would we be leaking cmd here? > > - cleanup: > + error: > err = virSaveLastError(); > VIR_FORCE_CLOSE(fd); > virStorageBackendLogicalDeleteVol(conn, pool, vol, 0); > virCommandFree(cmd); > virSetError(err); > + virFreeError(err); Not that it matters here, but I did find at least one path where a virSaveLastError() didn't call virFreeError() (e.g in storage_backend_logical.c). > return -1; > } > > ACK otherwise. John -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list