summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--apt-pkg/sourcelist.cc4
-rwxr-xr-xtest/integration/test-apt-sources-deb82210
2 files changed, 12 insertions, 2 deletions
diff --git a/apt-pkg/sourcelist.cc b/apt-pkg/sourcelist.cc
index 82d2ed3c6..afbf3e665 100644
--- a/apt-pkg/sourcelist.cc
+++ b/apt-pkg/sourcelist.cc
@@ -98,8 +98,8 @@ bool pkgSourceList::Type::ParseStanza(vector<metaIndex *> &List, /*{{{*/
std::map<char const * const, std::pair<char const * const, bool> > mapping;
#define APT_PLUSMINUS(X, Y) \
mapping.insert(std::make_pair(X, std::make_pair(Y, true))); \
- mapping.insert(std::make_pair(X "Add", std::make_pair(Y "+", true))); \
- mapping.insert(std::make_pair(X "Remove", std::make_pair(Y "-", true)))
+ mapping.insert(std::make_pair(X "-Add", std::make_pair(Y "+", true))); \
+ mapping.insert(std::make_pair(X "-Remove", std::make_pair(Y "-", true)))
APT_PLUSMINUS("Architectures", "arch");
APT_PLUSMINUS("Languages", "lang");
APT_PLUSMINUS("Targets", "target");
diff --git a/test/integration/test-apt-sources-deb822 b/test/integration/test-apt-sources-deb822
index fd275f978..9f761cb1c 100755
--- a/test/integration/test-apt-sources-deb822
+++ b/test/integration/test-apt-sources-deb822
@@ -189,3 +189,13 @@ EOF
testsuccessequal --nomsg "'http://emacs.naquadah.org/stable/InRelease' emacs.naquadah.org_stable_InRelease 0
'http://emacs.naquadah.org/stable/Packages.xz' emacs.naquadah.org_stable_Packages 0
'http://emacs.naquadah.org/stable/en.xz' emacs.naquadah.org_stable_en 0 " aptget update --print-uris
+
+# multivalue -Add/-Remove
+msgcleantest 'Test deb822 sources.list file which has' '-Add/-Remove multivalues'
+echo "$BASE" > $SOURCES
+echo "Languages-Remove: en" >> $SOURCES
+echo "Architectures-Add: armel" >> $SOURCES
+testsuccessequal --nomsg "'http://ftp.debian.org/debian/dists/stable/InRelease' ftp.debian.org_debian_dists_stable_InRelease 0
+'http://ftp.debian.org/debian/dists/stable/main/binary-i386/Packages.xz' ftp.debian.org_debian_dists_stable_main_binary-i386_Packages 0
+'http://ftp.debian.org/debian/dists/stable/main/binary-all/Packages.xz' ftp.debian.org_debian_dists_stable_main_binary-all_Packages 0
+'http://ftp.debian.org/debian/dists/stable/main/binary-armel/Packages.xz' ftp.debian.org_debian_dists_stable_main_binary-armel_Packages 0 " aptget update --print-uris