Browse Source

* Correct a bug that caused hidden enhancing tasks to be marked for install

if they enhanced no available tasks.
keep-around/43e990ab3f4cc50982f8dbc32e3465ca7c827876
Joey Hess 16 years ago
parent
commit
d57fe95a52
  1. 7
      debian/changelog
  2. 18
      tasksel.pl

7
debian/changelog

@ -1,3 +1,10 @@
tasksel (2.64) UNRELEASED; urgency=low
* Correct a bug that caused hidden enhancing tasks to be marked for install
if they enhanced no available tasks.
-- Joey Hess <joeyh@debian.org> Fri, 12 Jan 2007 17:38:02 -0500
tasksel (2.63) unstable; urgency=emergency
* Switch database-server to use postgres 8.1. (See #406399)

18
tasksel.pl

@ -520,15 +520,19 @@ sub main {
}
foreach my $task (grep { ! $_->{_install} && exists $_->{enhances} &&
length $_->{enhances} } @tasks) {
# Mark enhancing tasks for install if their
# dependencies are met and if their test fields
# mark them for install.
task_test($task, $options{"new-install"}, 0, 1);
foreach my $dep (list_to_tasks($task->{enhances}, @tasks)) {
if (! $dep->{_install}) {
$task->{_install} = 0;
my @deps=list_to_tasks($task->{enhances}, @tasks);
if (@deps) {
# Mark enhancing tasks for install if their
# dependencies are met and if their test fields
# mark them for install.
task_test($task, $options{"new-install"}, 0, 1);
foreach my $dep (@deps) {
if (! $dep->{_install}) {
$task->{_install} = 0;
}
}
}
# If two enhancing tasks that both provide
# the same thing, only install one of them.
if ($task->{_install} && exists $task->{provides} &&

Loading…
Cancel
Save