diff options
author | David Kalnischkies <kalnischkies@gmail.com> | 2012-06-10 00:40:55 +0200 |
---|---|---|
committer | David Kalnischkies <kalnischkies@gmail.com> | 2012-06-10 00:40:55 +0200 |
commit | f87fab03bade8a049b318df68dfa4c361fab944c (patch) | |
tree | aaedbfe1f4599b5584bb2cab9ec7ba2cd0c2a028 /apt-pkg/aptconfiguration.cc | |
parent | a98b6615254f8f7251d43c52de8f1f605c821ed7 (diff) |
* 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)
Diffstat (limited to 'apt-pkg/aptconfiguration.cc')
-rw-r--r-- | apt-pkg/aptconfiguration.cc | 26 |
1 files changed, 15 insertions, 11 deletions
diff --git a/apt-pkg/aptconfiguration.cc b/apt-pkg/aptconfiguration.cc index d763546f8..d31ccb642 100644 --- a/apt-pkg/aptconfiguration.cc +++ b/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 |