From 2db5b414b2181ae1af65e0d346f7604ff53f051c Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Tue, 7 Sep 2010 15:08:19 +0200 Subject: * ftparchive/apt-ftparchive.cc: - ensure that BinDirectory as well as Tree settings get the correct default FileMode setting (Closes: #595922) --- ftparchive/apt-ftparchive.cc | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'ftparchive/apt-ftparchive.cc') diff --git a/ftparchive/apt-ftparchive.cc b/ftparchive/apt-ftparchive.cc index 6f9fa7ab3..73d34249b 100644 --- a/ftparchive/apt-ftparchive.cc +++ b/ftparchive/apt-ftparchive.cc @@ -135,6 +135,8 @@ void PackageMap::GetGeneral(Configuration &Setup,Configuration &Block) PkgExt = Block.Find("Packages::Extensions", Setup.Find("Default::Packages::Extensions",".deb").c_str()); + Permissions = Setup.FindI("Default::FileMode",0644); + if (FLFile.empty() == false) FLFile = flCombine(Setup.Find("Dir::FileListDir"),FLFile); @@ -457,7 +459,7 @@ void LoadTree(vector &PkgList,Configuration &Setup) string DFLFile = Setup.Find("TreeDefault::FileList", ""); string DSFLFile = Setup.Find("TreeDefault::SourceFileList", ""); - int const Permissions = Setup.FindI("Default::FileMode",0644); + mode_t const Permissions = Setup.FindI("Default::FileMode",0644); bool const LongDescription = Setup.FindB("Default::LongDescription", _config->FindB("APT::FTPArchive::LongDescription", true)); @@ -548,6 +550,8 @@ void LoadTree(vector &PkgList,Configuration &Setup) /* */ void LoadBinDir(vector &PkgList,Configuration &Setup) { + mode_t const Permissions = Setup.FindI("Default::FileMode",0644); + // Process 'bindirectory' type sections const Configuration::Item *Top = Setup.Tree("bindirectory"); for (Top = (Top == 0?0:Top->Child); Top != 0;) @@ -567,6 +571,7 @@ void LoadBinDir(vector &PkgList,Configuration &Setup) Itm.InternalPrefix = Block.Find("InternalPrefix",Top->Tag.c_str()); Itm.Contents = Block.Find("Contents"); Itm.ContentsHead = Block.Find("Contents::Header"); + Itm.Permissions = Block.FindI("FileMode", Permissions); Itm.GetGeneral(Setup,Block); PkgList.push_back(Itm); -- cgit v1.2.3