Browse Source

* apt-pkg/aptconfiguration.cc:

- if APT::Languages=none save "none" in allCodes so that the detected
    configuration is cached as intended (Closes: #674690, LP: #1004947)
debian/1.8.y
David Kalnischkies 10 years ago
parent
commit
f87fab03ba
  1. 26
      apt-pkg/aptconfiguration.cc
  2. 3
      debian/changelog
  3. 6
      test/libapt/getlanguages_test.cc

26
apt-pkg/aptconfiguration.cc

@ -234,17 +234,21 @@ std::vector<std::string> const Configuration::getLanguages(bool const &All,
// override the configuration settings vector of languages.
string const forceLang = _config->Find("Acquire::Languages","");
if (forceLang.empty() == false) {
if (forceLang == "environment") {
codes = environment;
} else if (forceLang != "none")
codes.push_back(forceLang);
else //if (forceLang == "none")
builtin.clear();
allCodes = codes;
for (std::vector<string>::const_iterator b = builtin.begin();
b != builtin.end(); ++b)
if (std::find(allCodes.begin(), allCodes.end(), *b) == allCodes.end())
allCodes.push_back(*b);
if (forceLang == "none") {
codes.clear();
allCodes.clear();
allCodes.push_back("none");
} else {
if (forceLang == "environment")
codes = environment;
else
codes.push_back(forceLang);
allCodes = codes;
for (std::vector<string>::const_iterator b = builtin.begin();
b != builtin.end(); ++b)
if (std::find(allCodes.begin(), allCodes.end(), *b) == allCodes.end())
allCodes.push_back(*b);
}
if (All == true)
return allCodes;
else

3
debian/changelog

@ -32,6 +32,9 @@ apt (0.9.5.2) UNRELEASED; urgency=low
- set pkgCacheGen::Essential to "all" again (Closes: #675449)
* apt-pkg/algorithms.cc:
- force install only for one essential package out of a group
* apt-pkg/aptconfiguration.cc:
- if APT::Languages=none save "none" in allCodes so that the detected
configuration is cached as intended (Closes: #674690, LP: #1004947)
[ Justin B Rye ]
* doc/apt-cdrom.8.xml:

6
test/libapt/getlanguages_test.cc

@ -144,7 +144,8 @@ int main(int argc,char *argv[])
_config->Set("Acquire::Languages", "none");
vec = APT::Configuration::getLanguages(true, false, env);
equals(vec.size(), 0);
equals(vec.size(), 1);
equals(vec[0], "none");
_config->Set("Acquire::Languages", "");
_config->Set("Dir::State::lists", "/non-existing-dir");
@ -168,7 +169,8 @@ int main(int argc,char *argv[])
_config->Set("Acquire::Languages", "none");
env[0] = "de_DE.UTF-8";
vec = APT::Configuration::getLanguages(true, false, env);
equals(vec.size(), 0);
equals(vec.size(), 1);
equals(vec[0], "none");
_config->Set("Acquire::Languages", "");
//FIXME: Remove support for this deprecated setting

Loading…
Cancel
Save