summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--NEWS3
-rw-r--r--urpm/media.pm5
2 files changed, 5 insertions, 3 deletions
diff --git a/NEWS b/NEWS
index c51fae95..d55c6c01 100644
--- a/NEWS
+++ b/NEWS
@@ -1,6 +1,9 @@
- urpmi
o for long package names, ensure progression of installation (####...) is
still properly indented (#28639)
+- urpmi.update
+ o only copy previous hdlist in cache dir for rsync, don't do it for wget/curl
+ (it's useless and potentially dangerous when used with "resume")
- urpmf
o bug fix -m (#31452)
diff --git a/urpm/media.pm b/urpm/media.pm
index bdabc44d..ee8e790d 100644
--- a/urpm/media.pm
+++ b/urpm/media.pm
@@ -1487,10 +1487,9 @@ sub _update_medium__parse_if_unmodified__remote {
if ($options->{force}) {
unlink cachedir_with_hdlist($urpm, $medium, 's');
} else {
- #- try to sync (copy if needed) local copy after restored the previous one.
- #- this is useful for rsync (?)
+ #- for rsync, try to sync (copy if needed) local copy after restored the previous one.
my $previous_hdlist = statedir_hdlist_or_synthesis($urpm, $medium, 's');
- if (-e $previous_hdlist) {
+ if (-e $previous_hdlist && urpm::protocol_from_url($medium->{url}) eq 'rsync') {
copy_and_own(
$previous_hdlist,
cachedir_with_hdlist($urpm, $medium, 's'),