diff options
author | Guillem Jover <guillem@debian.org> | 2014-10-15 15:30:28 +0200 |
---|---|---|
committer | Guillem Jover <guillem@debian.org> | 2014-10-20 16:47:14 +0200 |
commit | e121d882c92099d1f1aa9eedd0c0e90806a44efa (patch) | |
tree | f276b30c2b99fcf9f09796573f1f8ef49a62f2be /debian | |
parent | 17630063debf3183b61bd82fddd2bed484e0c954 (diff) | |
download | dpkg-e121d882c92099d1f1aa9eedd0c0e90806a44efa.tar.gz |
dpkg: Fix trigger dependency checks and cycle detection
Break dependency cycles on dependtry > 1 in trigproc(), before calling
dependencies_ok(). But if we have a dependency cycle where a package A
awaits triggers and package P has them pending, and both depend on each
other, the dependency cycle breaking code is not smart enough to break
it at the correct place, as the relationship is directional. So we handle
it specially on deppossi_ok_found(), in case we are in the cycle breaking
dependtry. Otherwise we just defer it, but do not record that it can be
fixed by trigger processing, because we would get into an inifite loop.
Move trigger cycle detection after dependency checks, so that it does
not detect bogus trigger cycles that would have been avoided simply by
the dependency checks and cycle breaking code.
Regression introduced in commit 35c1c59cfad75d75b3d98974ad201f95d932adb6.
Closes: #765434, #765668, #765734, #765781, #765789, #765952
Diffstat (limited to 'debian')
-rw-r--r-- | debian/changelog | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/debian/changelog b/debian/changelog index c9c634c07..b932522ea 100644 --- a/debian/changelog +++ b/debian/changelog @@ -13,6 +13,9 @@ dpkg (1.17.19) UNRELEASED; urgency=low Prompted by Helmut Grohne <helmut@subdivi.de>. * Reverse --verify-format logic to actually accept 'rpm' as valid. Closes: #765907 + * Fix trigger dependency checks and cycle detection. + Regression introduced in dpkg 1.17.17. + Closes: #765434, #765668, #765734, #765781, #765789, #765952 [ Updated programs translations ] * Italian (Milo Casagrande): Closes: #765748 |