summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristophe Fergeau <cfergeau@mandriva.com>2009-06-04 16:07:25 +0000
committerChristophe Fergeau <cfergeau@mandriva.com>2009-06-04 16:07:25 +0000
commit494e132262dc7c0a161b4e3df5765f293d483574 (patch)
tree6fc7d6841ace752acb4417fa58919d313014663c
parent3627f98261a61ba19abc6e92efacbd5101803b81 (diff)
downloadurpmi-494e132262dc7c0a161b4e3df5765f293d483574.tar
urpmi-494e132262dc7c0a161b4e3df5765f293d483574.tar.gz
urpmi-494e132262dc7c0a161b4e3df5765f293d483574.tar.bz2
urpmi-494e132262dc7c0a161b4e3df5765f293d483574.tar.xz
urpmi-494e132262dc7c0a161b4e3df5765f293d483574.zip
- adjust parsing of aria2 output for aria2 1.4, fixes bug #51354
-rw-r--r--NEWS2
-rw-r--r--urpm/download.pm3
2 files changed, 4 insertions, 1 deletions
diff --git a/NEWS b/NEWS
index 0ded4ca2..6dfd0e70 100644
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,5 @@
+- adjust parsing of aria2 output for aria2 1.4, fixes bug #51354, patch from
+ Funda Wang
- use urpmi log API for the transaction failed message instead of
printing it on the console so that installer can save each error
with each transaction log instead of only having a summary at end
diff --git a/urpm/download.pm b/urpm/download.pm
index 63478f26..a2669919 100644
--- a/urpm/download.pm
+++ b/urpm/download.pm
@@ -723,7 +723,8 @@ sub _parse_aria2_output {
propagate_sync_callback($options, 'start', $file)
if !$options->{is_retry};
}
- if ($buf =~ m!^\[#\d*\s+\S+:([\d\.]+\w*).([\d\.]+\w*)\S([\d]+)\S+\s+\S+\s*([\d\.]+)\s\w*:([\d\.]+\w*/\w)\s\w*:(\d+\w*)\]$!) {
+ #parses aria2c: [#1 SIZE:176.0KiB/2.5MiB(6%) CN:3 SPD:256.22KiBs ETA:09s]
+ if ($buf =~ m!^\[#\d*\s+\S+:([\d\.]+\w*).([\d\.]+\w*)\S([\d]+)\S+\s+\S+\s*([\d\.]+)\s\w*:([\d\.]+\w*)\s\w*:(\d+\w*)\]$!) {
my ($total, $percent, $speed, $eta) = ($2, $3, $5, $6);
#- $1 = current downloaded size, $4 = connections
if (propagate_sync_callback($options, 'progress', $file, $percent, $total, $eta, $speed) eq 'canceled') {