diff options
author | David Kalnischkies <kalnischkies@gmail.com> | 2011-12-14 12:32:53 +0100 |
---|---|---|
committer | David Kalnischkies <kalnischkies@gmail.com> | 2011-12-14 12:32:53 +0100 |
commit | 4df62de6ea49c29eada5e58764378da1b0ec8648 (patch) | |
tree | c0504fa27eee6cea28aee8edb8d33c52fb527249 | |
parent | c8e5d01add32db96106241794de38bd7d7d26990 (diff) |
* apt-pkg/aptconfiguration.cc:
- parse dpkg --print-foreign-architectures correctly in
case archs are separated by newline instead of space, too.
-rw-r--r-- | apt-pkg/aptconfiguration.cc | 2 | ||||
-rw-r--r-- | debian/changelog | 5 | ||||
-rwxr-xr-x | test/integration/test-bug-612958-use-dpkg-multiarch-config | 18 |
3 files changed, 23 insertions, 2 deletions
diff --git a/apt-pkg/aptconfiguration.cc b/apt-pkg/aptconfiguration.cc index bc385b2dc..cc77eea6f 100644 --- a/apt-pkg/aptconfiguration.cc +++ b/apt-pkg/aptconfiguration.cc @@ -335,7 +335,7 @@ std::vector<std::string> const Configuration::getArchitectures(bool const &Cache FILE *dpkg = popen(dpkgcall.c_str(), "r"); char buf[1024]; if(dpkg != NULL) { - if (fgets(buf, sizeof(buf), dpkg) != NULL) { + while (fgets(buf, sizeof(buf), dpkg) != NULL) { char* arch = strtok(buf, " "); while (arch != NULL) { for (; isspace(*arch) != 0; ++arch); diff --git a/debian/changelog b/debian/changelog index 1dffe9c25..277c1d961 100644 --- a/debian/changelog +++ b/debian/changelog @@ -5,13 +5,16 @@ apt (0.8.15.10) UNRELEASEDunstable; urgency=low - show a debug why a package was kept by ResolveByKeep() * doc/manpage-style.xml: - put <brackets> around email addresses + * apt-pkg/aptconfiguration.cc: + - parse dpkg --print-foreign-architectures correctly in + case archs are separated by newline instead of space, too. [ Chris Leick ] * German manpage translation update * doc/*.xml: - find and fix a bunch of misspellings - -- David Kalnischkies <kalnischkies@gmail.com> Sun, 20 Nov 2011 18:02:08 +0100 + -- David Kalnischkies <kalnischkies@gmail.com> Wed, 14 Dec 2011 12:32:37 +0100 apt (0.8.15.9) unstable; urgency=low diff --git a/test/integration/test-bug-612958-use-dpkg-multiarch-config b/test/integration/test-bug-612958-use-dpkg-multiarch-config index 4f31c3953..18b964636 100755 --- a/test/integration/test-bug-612958-use-dpkg-multiarch-config +++ b/test/integration/test-bug-612958-use-dpkg-multiarch-config @@ -56,4 +56,22 @@ testfail 'dpkg config' 'armel' echo '#! /bin/sh echo "amd64 armel"' > ./dpkg-printer +testpass 'dpkg config' 'i386' +testpass 'dpkg config' 'amd64' +testpass 'dpkg config' 'armel' + +echo '#! /bin/sh +echo "amd64 +armel"' > ./dpkg-printer + +testpass 'dpkg config' 'i386' +testpass 'dpkg config' 'amd64' testpass 'dpkg config' 'armel' + +echo '#! /bin/sh +echo "amd64 +i386"' > ./dpkg-printer + +testpass 'dpkg config' 'i386' +testpass 'dpkg config' 'amd64' +testfail 'dpkg config' 'armel' |