summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Kalnischkies <kalnischkies@gmail.com>2010-04-14 18:01:11 +0200
committerDavid Kalnischkies <kalnischkies@gmail.com>2010-04-14 18:01:11 +0200
commit05bae55fb7fe23b2061182a60db2f2f914a2d3ec (patch)
treec8f30a463920465c627086d91be6815a5e065db1
parent9c2c9c24f7027a0299e545e55c38ac4c557359a5 (diff)
* apt-pkg/deb/dpkgpm.cc:
- remove Chroot-Directory from files passed to install commands. Thanks to Kel Modderman for report & patch! (Closes: #577226)
-rw-r--r--apt-pkg/deb/dpkgpm.cc14
-rw-r--r--debian/changelog3
2 files changed, 16 insertions, 1 deletions
diff --git a/apt-pkg/deb/dpkgpm.cc b/apt-pkg/deb/dpkgpm.cc
index 14a4968f7..ca8faa8a5 100644
--- a/apt-pkg/deb/dpkgpm.cc
+++ b/apt-pkg/deb/dpkgpm.cc
@@ -124,7 +124,19 @@ bool pkgDPkgPM::Install(PkgIterator Pkg,string File)
if (File.empty() == true || Pkg.end() == true)
return _error->Error("Internal Error, No file name for %s",Pkg.Name());
- List.push_back(Item(Item::Install,Pkg,File));
+ // If the filename string begins with DPkg::Chroot-Directory, return the
+ // substr that is within the chroot so dpkg can access it.
+ string const chrootdir = _config->FindDir("DPkg::Chroot-Directory","/");
+ if (chrootdir != "/" && File.find(chrootdir) == 0)
+ {
+ size_t len = chrootdir.length();
+ if (chrootdir.at(len - 1) == '/')
+ len--;
+ List.push_back(Item(Item::Install,Pkg,File.substr(len)));
+ }
+ else
+ List.push_back(Item(Item::Install,Pkg,File));
+
return true;
}
/*}}}*/
diff --git a/debian/changelog b/debian/changelog
index 6cf067952..7d2417cf4 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -18,6 +18,9 @@ apt (0.7.26~exp4) experimental; urgency=low
- display MD5Sum in --print-uris if not forced to use another method
instead of displaying the strongest available (Closes: #576420)
- regex for package names executed on Grp- not PkgIterator
+ * apt-pkg/deb/dpkgpm.cc:
+ - remove Chroot-Directory from files passed to install commands.
+ Thanks to Kel Modderman for report & patch! (Closes: #577226)
-- David Kalnischkies <kalnischkies@gmail.com> Sat, 03 Apr 2010 14:58:39 +0200