summaryrefslogtreecommitdiff
path: root/apt-pkg
diff options
context:
space:
mode:
Diffstat (limited to 'apt-pkg')
-rw-r--r--apt-pkg/packagemanager.cc6
-rw-r--r--apt-pkg/packagemanager.h1
2 files changed, 4 insertions, 3 deletions
diff --git a/apt-pkg/packagemanager.cc b/apt-pkg/packagemanager.cc
index 874472a47..8112c7fa1 100644
--- a/apt-pkg/packagemanager.cc
+++ b/apt-pkg/packagemanager.cc
@@ -166,7 +166,7 @@ bool pkgPackageManager::CreateOrderList()
delete List;
List = new pkgOrderList(&Cache);
- static bool const NoImmConfigure = !_config->FindB("APT::Immediate-Configure",true);
+ NoImmConfigure = !_config->FindB("APT::Immediate-Configure",true);
ImmConfigureAll = _config->FindB("APT::Immediate-Configure-All",false);
if (Debug && ImmConfigureAll)
@@ -982,11 +982,11 @@ pkgPackageManager::OrderResult pkgPackageManager::OrderInstall()
if (List->IsNow(Pkg) == false)
{
- if (!List->IsFlag(Pkg,pkgOrderList::Configured)) {
+ if (!List->IsFlag(Pkg,pkgOrderList::Configured) && !NoImmConfigure) {
if (SmartConfigure(Pkg) == false && Debug)
_error->Warning("Internal Error, Could not configure %s",Pkg.Name());
// FIXME: The above warning message might need changing
- } else {
+ } else {
if (Debug == true)
clog << "Skipping already done " << Pkg.Name() << endl;
}
diff --git a/apt-pkg/packagemanager.h b/apt-pkg/packagemanager.h
index dcc9dc2a2..d4a25e982 100644
--- a/apt-pkg/packagemanager.h
+++ b/apt-pkg/packagemanager.h
@@ -48,6 +48,7 @@ class pkgPackageManager : protected pkgCache::Namespace
pkgDepCache &Cache;
pkgOrderList *List;
bool Debug;
+ bool NoImmConfigure;
bool ImmConfigureAll;
/** \brief saves packages dpkg let disappear