summaryrefslogtreecommitdiff
path: root/apt-private
diff options
context:
space:
mode:
authorDavid Kalnischkies <david@kalnischkies.de>2015-06-15 23:06:56 +0200
committerDavid Kalnischkies <david@kalnischkies.de>2015-06-15 23:35:55 +0200
commit9d2a8a7388cf3b0bbbe92f6b0b30a533e1167f40 (patch)
tree7cd6b13d7f0f8f26850cb44a88e70935ee86e68f /apt-private
parent1eb1836f4b5397497bd34f0cf516e6e4e73117bf (diff)
condense parallel requests with the same hashes to one
It shouldn't be too common, but sometimes people have multiple mirrors in the sources or otherwise repositories with the same content. Now that we gracefully can handle multiple requests to the same URI, we can also fold multiple requests with the same expected hashes into one. Note that this isn't trying to find oppertunities for merging, but just merges if it happens to encounter the oppertunity for it. This is most obvious in the new testcase actually as it needs to delay the action to give the acquire system enough time to figure out that they can be merged.
Diffstat (limited to 'apt-private')
-rw-r--r--apt-private/acqprogress.cc6
1 files changed, 1 insertions, 5 deletions
diff --git a/apt-private/acqprogress.cc b/apt-private/acqprogress.cc
index dc92e3b2a..f6c3d1204 100644
--- a/apt-private/acqprogress.cc
+++ b/apt-private/acqprogress.cc
@@ -116,14 +116,10 @@ void AcqTextStatus::Fail(pkgAcquire::ItemDesc &Itm)
if (Quiet > 1)
return;
- // Ignore certain kinds of transient failures (bad code)
- if (Itm.Owner->Status == pkgAcquire::Item::StatIdle)
- return;
-
AssignItemID(Itm);
clearLastLine();
- if (Itm.Owner->Status == pkgAcquire::Item::StatDone)
+ if (Itm.Owner->Status == pkgAcquire::Item::StatDone || Itm.Owner->Status == pkgAcquire::Item::StatIdle)
{
// TRANSLATOR: Very short word to be displayed for files in 'apt-get update'
// which failed to download, but the error is ignored (compare "Err:")