commit mc for openSUSE:Factory

Hello community, here is the log from the commit of package mc for openSUSE:Factory checked in at 2013-11-30 07:36:40 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/mc (Old) and /work/SRC/openSUSE:Factory/.mc.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "mc" Changes: -------- --- /work/SRC/openSUSE:Factory/mc/mc.changes 2013-11-29 12:03:58.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.mc.new/mc.changes 2013-11-30 07:36:41.000000000 +0100 @@ -1,0 +2,7 @@ +Thu Nov 28 12:27:16 UTC 2013 - dnh@opensuse.org + +- Reimplementation of mcrar5fs_list in vfs/extfs/helpers/urar using + 'unrar vt' fixing the "trailing space" problem with 'unrar [lv]' + closing http://www.midnight-commander.org/ticket/3073 and bnc#849082 + +------------------------------------------------------------------- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ mc.spec ++++++ --- /var/tmp/diff_new_pack.lkstzC/_old 2013-11-30 07:36:42.000000000 +0100 +++ /var/tmp/diff_new_pack.lkstzC/_new 2013-11-30 07:36:42.000000000 +0100 @@ -45,6 +45,7 @@ # add mc-extfs-helpers-urar.patch (by dnh@opensuse.org) - Fix urar # extfs failing on files with spaces (bnc#849082). Forwarded to upstream. +# see http://www.midnight-commander.org/ticket/3073 Patch22: mc-extfs-helpers-urar.patch #debian fixes for vfs ++++++ mc-extfs-helpers-urar.patch ++++++ --- /var/tmp/diff_new_pack.lkstzC/_old 2013-11-30 07:36:42.000000000 +0100 +++ /var/tmp/diff_new_pack.lkstzC/_new 2013-11-30 07:36:42.000000000 +0100 @@ -1,10 +1,25 @@ diff -urN -x '*~' mc-4.8.10.orig/src/vfs/extfs/helpers/urar.in mc-4.8.10/src/vfs/extfs/helpers/urar.in --- mc-4.8.10.orig/src/vfs/extfs/helpers/urar.in 2013-08-02 17:02:39.000000000 +0200 -+++ mc-4.8.10/src/vfs/extfs/helpers/urar.in 2013-11-25 23:10:36.000000000 +0100 -@@ -42,14 +42,43 @@ - $UNRAR v -c- -cfg- "$1" | @AWK@ -v uid=`id -u` -v gid=`id -g` ' - BEGIN { flag=0 } - /^-----------/ { flag++; if (flag > 1) exit 0; next } ++++ mc-4.8.10/src/vfs/extfs/helpers/urar.in 2013-11-28 07:14:54.000000000 +0100 +@@ -4,6 +4,11 @@ + # (C) 1996 2:5020/337.13@fidonet.org + # Updated by christian.gennerat@alcatel.fr 1999 + # Andrew V. Samoilov <sav@bcs.zp.ua> 2000 ++# ++# Andrew Borodin <aborodin@vmail.ru> ++# David Haller <dnh@opensuse.org> ++# 2013: support unrar5 ++# + # beta version 2.0 + # + # rar and unrar can be found on http://www.rarlabs.com/ +@@ -39,18 +44,62 @@ + + mcrar5fs_list () + { +- $UNRAR v -c- -cfg- "$1" | @AWK@ -v uid=`id -u` -v gid=`id -g` ' +-BEGIN { flag=0 } +-/^-----------/ { flag++; if (flag > 1) exit 0; next } -flag==1 { - split($5, a, "-") - if (index($1, "D") != 0) @@ -13,43 +28,63 @@ - if (index($1, ".") != 0) - $1="-rw-r--r--" - printf "%s 1 %s %s %d %02d/%02d/%02d %s ./%s\n", $1, uid, gid, $2, a[2], a[1], a[3], $6, $8 -+flag == 1 { -+ name=""; delete fields; delete seps; -+ -+ ### split line, save n-fields and save seperators in "seps" -+ ### tested with busybox awk -+ nameparts = split($0, fields, " "); -+ split($0, seps, "[^ \t]+"); -+ sub("^ ", "", seps[8]); -+ -+ ### split date for reformatting -+ split(fields[5], date, "-"); +-}' ++ $UNRAR vt -c- -cfg- "$1" | @AWK@ -F ':' -v uid=`id -u` -v gid=`id -g` ' ++ { ++ ### remove space after the ":" of the field name ++ sub ("^ ", "", $2); ++ } + -+ ### check/adjust rights -+ if (index(fields[1], "D") != 0) { -+ fields[1] = "drwxr-xr-x"; -+ } else { -+ if (index(fields[1], ".") != 0) { -+ fields[1] = "-rw-r--r--"; ++ $1 ~ / *Name$/ { ++ ### next file ++ name = mtime = size = attrs = ""; ++ delete date; ++ name = $2; ++ ### if the name contains ":", append the rest of the fields ++ if (NF > 2) { ++ for (i = 3; i <= NF; i++) { ++ name = name ":" $i; ++ } + } + } -+ -+ ### join filename from fields 8 .. nameparts (saved above) -+ for(i = 8; i <= nameparts; i++) { -+ name=name seps[i] fields[i]; ++ $1 ~ /^ *mtime$/ { ++ mtime = $2 ":" $3; ++ } ++ $1 ~ /^ *Size$/ { ++ size = $2; ++ } ++ $1 ~ /^ *Attributes$/ { ++ attrs = $2; + } -+ name=name seps[i]; + -+# ### where did this come from? I say: if in doubt: pass on the -+# ### unrar bug to our users ... I leave this in for reference. -+# ### remove padding blanks from short names -+# if (length(name)<13) { -+# sub(" *$", "", name); -+# } ++ $1 ~ /^ *Compression$/ { ++ ### file done, using /^$/ is not so good you ++ ### would have to skip the version stuff first ++ ++ ### get date and time ++ split (mtime, date, " "); ++ time = date[2]; ++ ### cut off seconds from the time ++ sub (",[0-9]*$", "", time); ++ ### split for reordering of the date in the printf below ++ split (date[1], date, "-"); ++ ### mc seems to be able to parse 4 digit years too, so remove if tested ++ # sub ("^..", "", date[1]); ### cut year to 2 digits only ++ ++ ### check/adjust rights ++ if (index (attrs, "D") != 0) { ++ attrs = "drwxr-xr-x"; ++ } else { ++ if (index (attrs, ".") != 0) { ++ attrs = "-rw-r--r--"; ++ } ++ } + -+ printf("%s 1 %s %s %d %02d/%02d/%02d %s ./%s\n", -+ fields[1], uid, gid, fields[2], date[2], -+ date[1], date[3], fields[6], name); - }' ++ ### and finally ++ printf ("%s 1 %s %s %d %02d/%02d/%02d %s ./%s\n", ++ attrs, uid, gid, size, date[2], date[3], date[1], time, name); ++ } ++' } + mcrarfs_list () -- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org
participants (1)
-
root@hilbert.suse.de