diff options
author | Michael Vogt <michael.vogt@ubuntu.com> | 2007-02-21 09:59:53 +0100 |
---|---|---|
committer | Michael Vogt <michael.vogt@ubuntu.com> | 2007-02-21 09:59:53 +0100 |
commit | d715b9c969264eec96913b577f63a3e9e498b2e6 (patch) | |
tree | 414ba9bfb572ce0243c1ec7ae180b57702d94bd4 /apt-pkg/pkgrecords.cc | |
parent | 68acfb437f0c6c2e026be6fd3b7da3fc8d64c523 (diff) |
* fix in the pkgRecords destructor
* Bump ABI version
Diffstat (limited to 'apt-pkg/pkgrecords.cc')
-rw-r--r-- | apt-pkg/pkgrecords.cc | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/apt-pkg/pkgrecords.cc b/apt-pkg/pkgrecords.cc index b22f3e73f..456b5aef4 100644 --- a/apt-pkg/pkgrecords.cc +++ b/apt-pkg/pkgrecords.cc @@ -23,11 +23,9 @@ // Records::pkgRecords - Constructor /*{{{*/ // --------------------------------------------------------------------- /* This will create the necessary structures to access the status files */ -pkgRecords::pkgRecords(pkgCache &Cache) : Cache(Cache), Files(0) +pkgRecords::pkgRecords(pkgCache &Cache) : Cache(Cache), + Files(Cache.HeaderP->PackageFileCount) { - Files = new Parser *[Cache.HeaderP->PackageFileCount]; - memset(Files,0,sizeof(*Files)*Cache.HeaderP->PackageFileCount); - for (pkgCache::PkgFileIterator I = Cache.FileBegin(); I.end() == false; I++) { @@ -49,9 +47,13 @@ pkgRecords::pkgRecords(pkgCache &Cache) : Cache(Cache), Files(0) /* */ pkgRecords::~pkgRecords() { - for (unsigned I = 0; I != Cache.HeaderP->PackageFileCount; I++) - delete Files[I]; - delete [] Files; + for ( vector<Parser*>::iterator it = Files.begin(); + it != Files.end(); + ++it) + { + delete *it; + } + } /*}}}*/ // Records::Lookup - Get a parser for the package version file /*{{{*/ |