diff options
author | Julian Andres Klode <jak@debian.org> | 2017-05-30 22:24:14 +0200 |
---|---|---|
committer | Julian Andres Klode <jak@debian.org> | 2017-05-31 14:39:53 +0200 |
commit | 7ddf958e370d13f93edc6923bee289b2f6444b41 (patch) | |
tree | b1df0b3c2094823dab8fb0428f1eac92157fbae4 /apt-pkg/deb/deblistparser.cc | |
parent | 5dc951d7cfd064ca63e045d32749e79846881d56 (diff) |
Fix parsing of or groups in build-deps with ignored packages
If the last alternative(s) of an Or group is ignored, because it does
not match an architecture list, we would end up keeping the or flag,
effectively making the next AND an OR.
For example, when parsing (on amd64):
debhelper (>= 9), libnacl-dev [amd64] | libnacl-dev [i386]
=> debhelper (>= 9), libnacl-dev |
Which can cause python-apt to crash.
Even worse:
debhelper (>= 9), libnacl-dev [amd64] | libnacl-dev [i386], foobar
=> debhelper (>= 9), libnacl-dev [amd64] | foobar
By setting the previous alternatives Or flag to the current Or flag
if the current alternative is ignored, we solve the issue.
LP: #1694697
Diffstat (limited to 'apt-pkg/deb/deblistparser.cc')
0 files changed, 0 insertions, 0 deletions