summaryrefslogtreecommitdiff
path: root/apt-private
diff options
context:
space:
mode:
authorMichael Vogt <mvo@debian.org>2013-10-14 08:42:48 +0200
committerMichael Vogt <mvo@debian.org>2013-10-14 08:42:48 +0200
commit5e9458e285af11c7fa4308add10d250e3546c8bf (patch)
treea3c62859aa031737cb8d7487ca8d742bcd2cba87 /apt-private
parenta22fdebf63a42026e4350ebd069512c797bc2a5b (diff)
re-add APT::Keep-Fds:: for the dpkg status-fd in dpkgpm.cc as we always need this
Diffstat (limited to 'apt-private')
-rw-r--r--apt-private/private-install.cc3
1 files changed, 3 insertions, 0 deletions
diff --git a/apt-private/private-install.cc b/apt-private/private-install.cc
index d1066c869..8d72faecc 100644
--- a/apt-private/private-install.cc
+++ b/apt-private/private-install.cc
@@ -104,12 +104,14 @@ bool InstallPackages(CacheFile &Cache,bool ShwKept,bool Ask, bool Safety)
if (_config->FindB("APT::Get::Simulate") == true)
{
pkgSimulate PM(Cache);
+
int status_fd = _config->FindI("APT::Status-Fd",-1);
APT::Progress::PackageManager *progress = NULL;
if (status_fd > 0)
progress = new APT::Progress::PackageManagerProgressFd(status_fd);
pkgPackageManager::OrderResult Res = PM.DoInstall(progress);
delete progress;
+
if (Res == pkgPackageManager::Failed)
return false;
if (Res != pkgPackageManager::Completed)
@@ -341,6 +343,7 @@ bool InstallPackages(CacheFile &Cache,bool ShwKept,bool Ask, bool Safety)
// FIXME: make this a factory
// select the right progress
int status_fd = _config->FindI("APT::Status-Fd",-1);
+
APT::Progress::PackageManager *progress = NULL;
if (status_fd > 0)
progress = new APT::Progress::PackageManagerProgressFd(status_fd);