diff options
author | Thierry Vignaud <tv@mageia.org> | 2012-12-06 09:01:07 +0000 |
---|---|---|
committer | Thierry Vignaud <tv@mageia.org> | 2012-12-06 09:01:07 +0000 |
commit | 7920b8e910fc6a8e0bc547451d8edfcf4a3a9b4d (patch) | |
tree | 59757185bbbd142caf10da945aa138322e8071ef | |
parent | 79776b47e63cda7b4d88ccc128c4e3c352d328db (diff) | |
download | rpmdrake-7920b8e910fc6a8e0bc547451d8edfcf4a3a9b4d.tar rpmdrake-7920b8e910fc6a8e0bc547451d8edfcf4a3a9b4d.tar.gz rpmdrake-7920b8e910fc6a8e0bc547451d8edfcf4a3a9b4d.tar.bz2 rpmdrake-7920b8e910fc6a8e0bc547451d8edfcf4a3a9b4d.tar.xz rpmdrake-7920b8e910fc6a8e0bc547451d8edfcf4a3a9b4d.zip |
(post_extract) keep IDs of packages rather than their paths
(success_summary) look at _all_ config files and only those instead of
manually matching file paths beginning with "^/etc" (mga#8310)
also do not fork useless rpm processes
-rw-r--r-- | NEWS | 2 | ||||
-rw-r--r-- | Rpmdrake/pkg.pm | 10 |
2 files changed, 7 insertions, 5 deletions
@@ -1,4 +1,6 @@ - cleanups +- look at _all_ config files and only those instead of manually + matching file paths beginning with "^/etc" (mga#8310) Version 5.39 - 28 October 2012, Funda Wang diff --git a/Rpmdrake/pkg.pm b/Rpmdrake/pkg.pm index 1b362789..19d4fed9 100644 --- a/Rpmdrake/pkg.pm +++ b/Rpmdrake/pkg.pm @@ -805,7 +805,7 @@ sub perform_installation { #- (partially) duplicated from /usr/sbin/urpmi :-( $transaction_progress_nb = 0; $done += grep { !/\.src\.rpm$/ } values %$transaction_sources; #updates $total = keys(%$transaction_sources_install) + keys %$transaction_sources; - push @rpms_upgrade, grep { !/\.src\.rpm$/ } values %$transaction_sources; + push @rpms_upgrade, keys %$transaction_sources; $done += grep { !/\.src\.rpm$/ } values %$transaction_sources_install; # installs }, pre_removable => sub { @@ -868,10 +868,10 @@ sub perform_installation { #- (partially) duplicated from /usr/sbin/urpmi :-( } my $id = statusbar_msg(N("Inspecting configuration files..."), 0); my %pkg2rpmnew; - foreach my $u (@rpms_upgrade) { - $u =~ m|/([^/]+-[^-]+-[^-]+)\.[^\./]+\.rpm$| - and $pkg2rpmnew{$1} = [ grep { m|^/etc| && (-r "$_.rpmnew" || -r "$_.rpmsave") } - map { chomp_($_) } run_rpm("rpm -ql $1") ]; + foreach my $id (@rpms_upgrade) { + my $pkg = $urpm->{depslist}[$id]; + next if $pkg->arch eq 'src'; + $pkg2rpmnew{$pkg->fullname} = [ grep { -r "$_.rpmnew" || -r "$_.rpmsave" } $pkg->conf_files ]; } statusbar_msg_remove($id); dialog_rpmnew(N("The installation is finished; everything was installed correctly. |