diff options
author | Michael Vogt <michael.vogt@ubuntu.com> | 2005-05-09 07:59:17 +0000 |
---|---|---|
committer | Michael Vogt <michael.vogt@ubuntu.com> | 2005-05-09 07:59:17 +0000 |
commit | 26d276459901fea7209203ec84403bb7934fb869 (patch) | |
tree | b5d8da8e1cf2646de2105f97f8b9b5291279ee43 /apt-pkg/acquire-item.cc | |
parent | 94dc9d7d8bbf2f1351db26e4532327c6784ead96 (diff) |
* fix a bug QueueNextDiff
Diffstat (limited to 'apt-pkg/acquire-item.cc')
-rw-r--r-- | apt-pkg/acquire-item.cc | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/apt-pkg/acquire-item.cc b/apt-pkg/acquire-item.cc index 81636902e..fff55f7b5 100644 --- a/apt-pkg/acquire-item.cc +++ b/apt-pkg/acquire-item.cc @@ -287,13 +287,13 @@ bool pkgAcqIndexDiffs::QueueNextDiff() SHA1.AddFD(fd.Fd(), fd.Size()); string local_sha1 = string(SHA1.Result()); - // see if we have a patch for it, the patch list must be ordered + // remove all patches until the next matching patch is found + // this requires the Index file to be ordered for(vector<DiffInfo>::iterator I=available_patches.begin(); - I != available_patches.end(); I++) { - // if the patch does not fit, it's not interessting - if((*I).sha1 != local_sha1) - available_patches.erase(I); - } + (*I).sha1 == local_sha1 || I != available_patches.end(); + I++) + available_patches.erase(I); + // error checking and falling back if no patch was found if(available_patches.size() == 0) { |