X-Git-Url: http://git.annexia.org/?a=blobdiff_plain;f=src%2Fguestfs.c;h=1575d75786e183e74574645e6d5a0573154d2b61;hb=d0c7e1d994f1b6ee64cc131d87cd652a2afba0d6;hp=7868e8f060e52ee474cbcbed3f8b5a0d6396814b;hpb=110428892c50b4099e2b44e43c778228d7ce05db;p=libguestfs.git diff --git a/src/guestfs.c b/src/guestfs.c index 7868e8f..1575d75 100644 --- a/src/guestfs.c +++ b/src/guestfs.c @@ -169,9 +169,6 @@ guestfs_create (void) void guestfs_close (guestfs_h *g) { - int i; - guestfs_h *gg; - if (g->state == NO_HANDLE) { /* Not safe to call ANY callbacks here, so ... */ fprintf (stderr, _("guestfs_close: called twice on the same handle\n")); @@ -219,6 +216,8 @@ guestfs_close (guestfs_h *g) remove_tmpdir (g); if (g->cmdline) { + size_t i; + for (i = 0; i < g->cmdline_size; ++i) free (g->cmdline[i]); free (g->cmdline); @@ -231,6 +230,8 @@ guestfs_close (guestfs_h *g) if (handles == g) handles = g->next; else { + guestfs_h *gg; + for (gg = handles; gg->next != g; gg = gg->next) ; gg->next = g->next;