summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--apt-pkg/deb/debmetaindex.cc2
-rwxr-xr-xtest/integration/test-signed-by-option13
2 files changed, 15 insertions, 0 deletions
diff --git a/apt-pkg/deb/debmetaindex.cc b/apt-pkg/deb/debmetaindex.cc
index ead07a479..aad7df735 100644
--- a/apt-pkg/deb/debmetaindex.cc
+++ b/apt-pkg/deb/debmetaindex.cc
@@ -687,6 +687,8 @@ bool debReleaseIndex::SetSignedBy(std::string const &pSignedBy)
std::stringstream os;
std::copy(fingers.begin(), fingers.end(), std::ostream_iterator<std::string>(os, ","));
SignedBy = os.str();
+ while (SignedBy[SignedBy.size() - 1] == ',')
+ SignedBy.resize(SignedBy.size() - 1);
}
}
else if (SignedBy != pSignedBy)
diff --git a/test/integration/test-signed-by-option b/test/integration/test-signed-by-option
new file mode 100755
index 000000000..4ab2e28bb
--- /dev/null
+++ b/test/integration/test-signed-by-option
@@ -0,0 +1,13 @@
+#!/bin/sh
+set -e
+
+TESTDIR="$(readlink -f "$(dirname "$0")")"
+. "$TESTDIR/framework"
+
+setupenvironment
+configarchitecture 'amd64'
+
+msgtest "Check that a repository with signed-by and two components works"
+echo 'deb [signed-by=CDE5618B8805FD6E202CE9C2D73C39E56580B386] https://people.debian.org/~jak/debian/ stable main contrib # Äffchen' > rootdir/etc/apt/sources.list
+
+testsuccess --nomsg aptcache policy