From b3887af24029cdc6179470fcb8587fff39a3eee9 Mon Sep 17 00:00:00 2001 From: Michael Vogt Date: Fri, 2 Mar 2012 22:01:51 +0100 Subject: * apt-pkg/packagemanager.cc: - when calculating pre-dependencies ensure that both unpack and configure are considered (instead of only configure) LP: #927993 --- apt-pkg/packagemanager.cc | 17 +++++++++++++---- debian/changelog | 3 +++ 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/apt-pkg/packagemanager.cc b/apt-pkg/packagemanager.cc index a370f15a3..701b64af1 100644 --- a/apt-pkg/packagemanager.cc +++ b/apt-pkg/packagemanager.cc @@ -611,10 +611,19 @@ bool pkgPackageManager::SmartUnPack(PkgIterator Pkg, bool const Immediate, int c continue; } - if (Debug) - clog << OutputInDepth(Depth) << "Trying to SmartConfigure " << Pkg.Name() << endl; - Bad = !SmartConfigure(Pkg, Depth + 1); - } + // check if it needs unpack or if if configure is enough + if (!List->IsFlag(Pkg,pkgOrderList::UnPacked)) + { + if (Debug) + clog << OutputInDepth(Depth) << "Trying to SmartUnpack " << Pkg.Name() << endl; + // SmartUnpack with the ImmediateFlag to ensure its really ready + Bad = !SmartUnPack(Pkg, true, Depth + 1); + } else { + if (Debug) + clog << OutputInDepth(Depth) << "Trying to SmartConfigure " << Pkg.Name() << endl; + Bad = !SmartConfigure(Pkg, Depth + 1); + } + } /* If this or element did not match then continue on to the next or element until a matching element is found */ diff --git a/debian/changelog b/debian/changelog index 360fcf453..25563e811 100644 --- a/debian/changelog +++ b/debian/changelog @@ -34,6 +34,9 @@ apt (0.8.16~exp13) UNRELEASED; urgency=low (LP: #923807) * apt-pkg/contrib/fileutl.h: - fix compat with FileFd::OpenDescriptor() in ReadOnlyGzip mode + * apt-pkg/packagemanager.cc: + - when calculating pre-dependencies ensure that both unpack and + configure are considered (instead of only configure) LP: #927993 -- David Kalnischkies Mon, 30 Jan 2012 19:17:09 +0100 -- cgit v1.2.3