The following commit has been merged in the master branch:
commit 1d647dd23c14c0c340d36e44c687b2530c04ac97
Author: Guillem Jover <[email protected]>
Date:   Thu Feb 25 23:34:11 2010 +0100

    Release the package iterators when done
    
    This is a cause of memory leaks, but in these cases the program is about
    to exit anyway, so we do it for correctness.

diff --git a/dselect/pkglist.cc b/dselect/pkglist.cc
index a6f006d..e2b2492 100644
--- a/dselect/pkglist.cc
+++ b/dselect/pkglist.cc
@@ -417,6 +417,8 @@ packagelist::packagelist(keybindings *kb) : baselist(kb) {
     table[nitems]= state;
     nitems++;
   }
+  iterpkgend(iter);
+
   if (!nitems)
     ohshit(_("There are no packages."));
   recursive= 0;
diff --git a/src/enquiry.c b/src/enquiry.c
index ee8938d..83714a0 100644
--- a/src/enquiry.c
+++ b/src/enquiry.c
@@ -347,6 +347,8 @@ void predeppackage(const char *const *argv) {
     pkg->clientdata->istobe= itb_normal;
     /* If dep is NULL we go and get the next package. */
   }
+  iterpkgend(it);
+
   if (!dep) exit(1); /* Not found */
   assert(pkg);
   startpkg= pkg;

-- 
dpkg's main repository


-- 
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]

Reply via email to