From: David Kalnischkies Date: Thu, 18 Mar 2010 12:27:55 +0000 (+0100) Subject: Fix a segfault in the version merger introduced in the previous patch: X-Git-Tag: 0.8.0~9^2~64^2~21 X-Git-Url: https://git.saurik.com/apt.git/commitdiff_plain/e426a5ff1cd02797b29f5781be4d6fc8bdf44610?ds=inline;hp=--cc Fix a segfault in the version merger introduced in the previous patch: As we skip now versions with a different hash we will have situations in which the version is equal but the hash different causing to check the next version, but as this version was the last one the version iterator is invalid then the merger wants to add further information. --- e426a5ff1cd02797b29f5781be4d6fc8bdf44610 diff --git a/apt-pkg/pkgcachegen.cc b/apt-pkg/pkgcachegen.cc index 75a0e34f0..47ead2df9 100644 --- a/apt-pkg/pkgcachegen.cc +++ b/apt-pkg/pkgcachegen.cc @@ -190,7 +190,7 @@ bool pkgCacheGenerator::MergeList(ListParser &List, } /* We already have a version for this item, record that we saw it */ - if (Res == 0) + if (Res == 0 && Ver.end() == false && Ver->Hash == Hash) { if (List.UsePackage(Pkg,Ver) == false) return _error->Error(_("Error occurred while processing %s (UsePackage2)"),