summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--apt-pkg/init.cc7
-rw-r--r--apt-pkg/policy.cc4
-rw-r--r--apt-pkg/sourcelist.cc9
3 files changed, 11 insertions, 9 deletions
diff --git a/apt-pkg/init.cc b/apt-pkg/init.cc
index 9543ca7e8..fa679e6c6 100644
--- a/apt-pkg/init.cc
+++ b/apt-pkg/init.cc
@@ -15,6 +15,7 @@
#include <apt-pkg/error.h>
#include <apt-pkg/pkgsystem.h>
#include <apt-pkg/configuration.h>
+#include <apt-pkg/strutl.h>
#include <apt-pkg/macros.h>
#include <string.h>
@@ -134,14 +135,14 @@ bool pkgInitConfig(Configuration &Cnf)
}
// Read the configuration parts dir
- std::string Parts = Cnf.FindDir("Dir::Etc::parts");
+ std::string const Parts = Cnf.FindDir("Dir::Etc::parts", "/dev/null");
if (DirectoryExists(Parts) == true)
Res &= ReadConfigDir(Cnf,Parts);
- else
+ else if (APT::String::Endswith(Parts, "/dev/null") == false)
_error->WarningE("DirectoryExists",_("Unable to read %s"),Parts.c_str());
// Read the main config file
- std::string FName = Cnf.FindFile("Dir::Etc::main");
+ std::string const FName = Cnf.FindFile("Dir::Etc::main", "/dev/null");
if (RealFileExists(FName) == true)
Res &= ReadConfigFile(Cnf,FName);
diff --git a/apt-pkg/policy.cc b/apt-pkg/policy.cc
index 2bdd96d8c..ff59fb0ac 100644
--- a/apt-pkg/policy.cc
+++ b/apt-pkg/policy.cc
@@ -307,11 +307,11 @@ APT_PURE signed short pkgPolicy::GetPriority(pkgCache::PkgFileIterator const &Fi
bool ReadPinDir(pkgPolicy &Plcy,string Dir)
{
if (Dir.empty() == true)
- Dir = _config->FindDir("Dir::Etc::PreferencesParts");
+ Dir = _config->FindDir("Dir::Etc::PreferencesParts", "/dev/null");
if (DirectoryExists(Dir) == false)
{
- if (Dir != "/dev/null")
+ if (APT::String::Endswith(Dir, "/dev/null") == false)
_error->WarningE("DirectoryExists",_("Unable to read %s"),Dir.c_str());
return true;
}
diff --git a/apt-pkg/sourcelist.cc b/apt-pkg/sourcelist.cc
index afbf3e665..022aff2fe 100644
--- a/apt-pkg/sourcelist.cc
+++ b/apt-pkg/sourcelist.cc
@@ -311,18 +311,19 @@ bool pkgSourceList::ReadMainList()
Reset();
// CNC:2003-11-28 - Entries in sources.list have priority over
// entries in sources.list.d.
- string Main = _config->FindFile("Dir::Etc::sourcelist");
- string Parts = _config->FindDir("Dir::Etc::sourceparts");
+ string Main = _config->FindFile("Dir::Etc::sourcelist", "/dev/null");
+ string Parts = _config->FindDir("Dir::Etc::sourceparts", "/dev/null");
if (RealFileExists(Main) == true)
Res &= ReadAppend(Main);
- else if (DirectoryExists(Parts) == false)
+ else if (DirectoryExists(Parts) == false && APT::String::Endswith(Parts, "/dev/null") == false)
// Only warn if there are no sources.list.d.
_error->WarningE("DirectoryExists", _("Unable to read %s"), Parts.c_str());
if (DirectoryExists(Parts) == true)
Res &= ReadSourceDir(Parts);
- else if (RealFileExists(Main) == false)
+ else if (Main.empty() == false && RealFileExists(Main) == false &&
+ APT::String::Endswith(Parts, "/dev/null") == false)
// Only warn if there is no sources.list file.
_error->WarningE("RealFileExists", _("Unable to read %s"), Main.c_str());