Просмотр исходного кода

Dont try to configure packages using SmartConfigure when not performing immediate configuration.

Christopher Baines лет назад: 15
Родитель
Сommit
b684d8c7b1
2 измененных файлов с 4 добавлено и 3 удалено
  1. 3 3
      apt-pkg/packagemanager.cc
  2. 1 0
      apt-pkg/packagemanager.h

+ 3 - 3
apt-pkg/packagemanager.cc

@@ -166,7 +166,7 @@ bool pkgPackageManager::CreateOrderList()
    delete List;
    delete List;
    List = new pkgOrderList(&Cache);
    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);
    ImmConfigureAll = _config->FindB("APT::Immediate-Configure-All",false);
    
    
    if (Debug && ImmConfigureAll) 
    if (Debug && ImmConfigureAll) 
@@ -982,11 +982,11 @@ pkgPackageManager::OrderResult pkgPackageManager::OrderInstall()
       
       
       if (List->IsNow(Pkg) == false)
       if (List->IsNow(Pkg) == false)
       {
       {
-         if (!List->IsFlag(Pkg,pkgOrderList::Configured)) {
+         if (!List->IsFlag(Pkg,pkgOrderList::Configured) && !NoImmConfigure) {
             if (SmartConfigure(Pkg) == false && Debug)
             if (SmartConfigure(Pkg) == false && Debug)
                _error->Warning("Internal Error, Could not configure %s",Pkg.Name());
                _error->Warning("Internal Error, Could not configure %s",Pkg.Name());
             // FIXME: The above warning message might need changing
             // FIXME: The above warning message might need changing
-         } else {   
+         } else {
 	    if (Debug == true)
 	    if (Debug == true)
 	       clog << "Skipping already done " << Pkg.Name() << endl;
 	       clog << "Skipping already done " << Pkg.Name() << endl;
 	 }
 	 }

+ 1 - 0
apt-pkg/packagemanager.h

@@ -48,6 +48,7 @@ class pkgPackageManager : protected pkgCache::Namespace
    pkgDepCache &Cache;
    pkgDepCache &Cache;
    pkgOrderList *List;
    pkgOrderList *List;
    bool Debug;
    bool Debug;
+   bool NoImmConfigure;
    bool ImmConfigureAll;
    bool ImmConfigureAll;
 
 
    /** \brief saves packages dpkg let disappear
    /** \brief saves packages dpkg let disappear