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) {
msgid "rename failed, %s (%s -> %s)."
msgstr ""
-#: apt-pkg/acquire-item.cc:502 apt-pkg/acquire-item.cc:1161
+#: apt-pkg/acquire-item.cc:532 apt-pkg/acquire-item.cc:1197
msgid "MD5Sum mismatch"
msgstr ""
-#: apt-pkg/acquire-item.cc:975
+#: apt-pkg/acquire-item.cc:1011
#, c-format
msgid ""
"I wasn't able to locate a file for the %s package. This might mean you need "
"to manually fix this package. (due to missing arch)"
msgstr ""
-#: apt-pkg/acquire-item.cc:1028
+#: apt-pkg/acquire-item.cc:1064
#, c-format
msgid ""
"I wasn't able to locate file for the %s package. This might mean you need to "
"manually fix this package."
msgstr ""
-#: apt-pkg/acquire-item.cc:1064
+#: apt-pkg/acquire-item.cc:1100
#, c-format
msgid ""
"The package index files are corrupted. No Filename: field for package %s."
msgstr ""
-#: apt-pkg/acquire-item.cc:1151
+#: apt-pkg/acquire-item.cc:1187
msgid "Size mismatch"
msgstr ""