diff options
author | Pascal Rigaux <pixel@mandriva.com> | 2008-07-09 19:03:10 +0000 |
---|---|---|
committer | Pascal Rigaux <pixel@mandriva.com> | 2008-07-09 19:03:10 +0000 |
commit | 568e51a65c52ddebe015cec9462a44f7cf5011df (patch) | |
tree | f5bfbb787fa3f0a2bc1cb4f51a1b961c818024d6 /urpm/parallel.pm | |
parent | e60d47449744866c1cc78079b8048dbc482d9b08 (diff) | |
download | urpmi-568e51a65c52ddebe015cec9462a44f7cf5011df.tar urpmi-568e51a65c52ddebe015cec9462a44f7cf5011df.tar.gz urpmi-568e51a65c52ddebe015cec9462a44f7cf5011df.tar.bz2 urpmi-568e51a65c52ddebe015cec9462a44f7cf5011df.tar.xz urpmi-568e51a65c52ddebe015cec9462a44f7cf5011df.zip |
factorize code into urpm::parallel::find_remove_pre()
Diffstat (limited to 'urpm/parallel.pm')
-rw-r--r-- | urpm/parallel.pm | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/urpm/parallel.pm b/urpm/parallel.pm index 441da68a..e881c09c 100644 --- a/urpm/parallel.pm +++ b/urpm/parallel.pm @@ -76,4 +76,23 @@ sub post_register_rpms { map { "$urpm->{cachedir}/rpms/" . basename($_) } @files); } +sub find_remove_pre { + my ($urpm, $state, %options) = @_; + + #- keep in mind if the previous selection is still active, it avoids + #- to re-start urpme --test on each node. + if ($options{find_packages_to_remove}) { + delete $state->{rejected}; + delete $urpm->{error_remove}; + '--test '; + } elsif (@{$urpm->{error_remove} || []}) { + undef, $urpm->{error_remove}; + } elsif ($options{test}) { + #- no need to restart what has been started before. + undef, [ keys %{$state->{rejected}} ]; + } else { + '--force '; + } +} + 1; |