From c6aa14e46842b0059c1648125562793e5edd08ee Mon Sep 17 00:00:00 2001 From: Michael Vogt Date: Mon, 24 Aug 2009 11:20:27 +0200 Subject: [PATCH] * apt-pkg/pkgcache.cc: - do not set internel "needs-configure" state for packages in triggers-pending state. dpkg will deal with the trigger and it if does it before we trigger it, dpkg will error out (LP: #414631) --- apt-pkg/pkgcache.cc | 12 ++++++------ debian/changelog | 7 +++++++ 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/apt-pkg/pkgcache.cc b/apt-pkg/pkgcache.cc index 2a9756c45..b0ce6e598 100644 --- a/apt-pkg/pkgcache.cc +++ b/apt-pkg/pkgcache.cc @@ -275,13 +275,13 @@ pkgCache::PkgIterator::OkState pkgCache::PkgIterator::State() const return NeedsUnpack; if (Pkg->CurrentState == pkgCache::State::UnPacked || - Pkg->CurrentState == pkgCache::State::HalfConfigured || - //we don't need to care for triggers awaiting packages - //dpkg will deal with them automatically when the - //trigger pending action is run (those packages are usually - //in half-configured or triggers-pending state) + Pkg->CurrentState == pkgCache::State::HalfConfigured) + // we leave triggers alone complettely. dpkg deals with + // them in a hard-to-predict manner and if they get + // resolved by dpkg before apt run dpkg --configure on + // the TriggersPending package dpkg returns a error //Pkg->CurrentState == pkgCache::State::TriggersAwaited - Pkg->CurrentState == pkgCache::State::TriggersPending) + //Pkg->CurrentState == pkgCache::State::TriggersPending) return NeedsConfigure; if (Pkg->CurrentState == pkgCache::State::HalfInstalled || diff --git a/debian/changelog b/debian/changelog index 2131b8077..6692191d1 100644 --- a/debian/changelog +++ b/debian/changelog @@ -7,6 +7,13 @@ apt (0.7.22.3) UNRELEASED; urgency=low and '{http,ftp}_proxy' environment variables are used only if options mentioned above are not specified. (Closes: #445985, #157759, #320184, #365880, #479617) + + [ Michael Vogt ] + * apt-pkg/pkgcache.cc: + - do not set internel "needs-configure" state for packages in + triggers-pending state. dpkg will deal with the trigger and + it if does it before we trigger it, dpkg will error out + (LP: #414631) -- Michael Vogt Wed, 19 Aug 2009 11:14:15 +0200 -- 2.45.2