diff options
author | Guillem Jover <guillem@debian.org> | 2013-11-05 20:05:59 +0100 |
---|---|---|
committer | Guillem Jover <guillem@debian.org> | 2013-12-04 07:09:44 +0100 |
commit | 84dc4b1dbd0252e7abc7d8bd01c1e1eb61e2a410 (patch) | |
tree | 7e579875b35564fe708aff09a5286acd1adfa3e1 /scripts/Dpkg/Control/FieldsCore.pm | |
parent | 5c2eff43159b9643bba4884876cf6fcc8ac222ef (diff) | |
download | dpkg-84dc4b1dbd0252e7abc7d8bd01c1e1eb61e2a410.tar.gz |
dpkg: Switch conflictor tracking from a fixed-size array to a queue
This fixes several related issues. The list of conflictors has always
really been a queue, where packages were added and then acted on,
although no package was removed from the list after being processed,
which in turn made subsequent conflictors accumulate and reach the
arbitrary limit due to previous unrelated Conflicts/Replaces pairs,
giving possibly very confusing error messages due to that.
Another theoretical problem is that because the list was not cleaned up
after processing it, a package could have been enqueued to be removed,
then a newer version reinstalled which could get removed again on a
subsequent package processing, being it on the list.
Closes: #726112
Diffstat (limited to 'scripts/Dpkg/Control/FieldsCore.pm')
0 files changed, 0 insertions, 0 deletions