summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--apt-pkg/acquire-item.cc2
-rwxr-xr-xtest/integration/test-apt-update-ims29
2 files changed, 23 insertions, 8 deletions
diff --git a/apt-pkg/acquire-item.cc b/apt-pkg/acquire-item.cc
index fd2ea08f8..dbc1dfbe7 100644
--- a/apt-pkg/acquire-item.cc
+++ b/apt-pkg/acquire-item.cc
@@ -1283,7 +1283,7 @@ void pkgAcqIndex::Done(string Message, unsigned long long Size,
// If we enable compressed indexes, queue for hash verification
if (_config->FindB("Acquire::GzipIndexes",false))
{
- DestFile = _config->FindDir("Dir::State::lists");
+ DestFile = _config->FindDir("Dir::State::lists") + "partial/";
DestFile += URItoFileName(RealURI) + '.' + compExt;
Decompression = true;
diff --git a/test/integration/test-apt-update-ims b/test/integration/test-apt-update-ims
index 3bd6e843c..946dfc7af 100755
--- a/test/integration/test-apt-update-ims
+++ b/test/integration/test-apt-update-ims
@@ -11,15 +11,30 @@ buildsimplenativepackage 'unrelated' 'all' '0.5~squeeze1' 'unstable'
setupaptarchive
changetowebserver
-testsuccess aptget update
+runtest() {
+ rm -f rootdir/var/lib/apt/lists/localhost*
-# check that I-M-S header is kept in redirections
-testequal "Hit http://localhost:8080 unstable InRelease
+ testsuccess aptget update
+
+ # ensure no leftovers in partial
+ testfailure ls "rootdir/var/lib/apt/lists/partial/*"
+
+ # check that I-M-S header is kept in redirections
+ testequal "Hit http://localhost:8080 unstable InRelease
Hit http://localhost:8080 unstable/main Sources
Hit http://localhost:8080 unstable/main amd64 Packages
Hit http://localhost:8080 unstable/main Translation-en
-Reading package lists..." aptget update
+Reading package lists..." aptget update -o Debug::pkgAcquire::Worker=0 -o Debug::Acquire::http=0
+
+ # ensure that we still do a hash check on ims hit
+ msgtest 'Test I-M-S reverify'
+ aptget update -o Debug::pkgAcquire::Auth=1 2>&1 | grep -A1 'RecivedHash:' | grep -q -- '- SHA' && msgpass || msgfail
+
+ # ensure no leftovers in partial
+ testfailure ls "rootdir/var/lib/apt/lists/partial/*"
+}
+
+runtest
-# ensure that we still do a hash check on ims hit
-msgtest 'Test I-M-S reverify'
-aptget update -o Debug::pkgAcquire::Auth=1 2>&1 | grep -A1 'RecivedHash:' | grep -q -- '- SHA' && msgpass || msgfail
+echo "Acquire::GzipIndexes "1";" > rootdir/etc/apt/apt.conf.d/02compressindex
+runtest