Hello community,

here is the log from the commit of package mc for openSUSE:Factory checked in 
at 2013-11-15 08:37:42
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
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-10-02 13:31:32.000000000 
+0200
+++ /work/SRC/openSUSE:Factory/.mc.new/mc.changes       2013-11-15 
08:37:44.000000000 +0100
@@ -1,0 +2,7 @@
+Tue Nov 12 21:09:36 UTC 2013 - [email protected]
+
+- add mc-extfs-helpers-urar.patch to fix urar extfs failing on files
+  with spaces when unrar5 is used (bnc#849082). Thanks to D. Werner
+  for finding the problem and proposing the fix.
+
+-------------------------------------------------------------------

New:
----
  mc-extfs-helpers-urar.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ mc.spec ++++++
--- /var/tmp/diff_new_pack.nRuhja/_old  2013-11-15 08:37:45.000000000 +0100
+++ /var/tmp/diff_new_pack.nRuhja/_new  2013-11-15 08:37:45.000000000 +0100
@@ -42,6 +42,8 @@
 Patch17:        mc-rpm.patch
 Patch20:        mc-f-keys.patch
 Patch21:        mc-extfs-helpers-deb.patch
+# mc-extfs-helpers-urar.patch [email protected] - Fix urar extfs failing on 
files with spaces (bnc#849082)
+Patch22:        mc-extfs-helpers-urar.patch
 #debian fixes for vfs
 Patch24:        02_ignore_ftp_chmod_error.patch
 #Debian fixes
@@ -118,6 +120,7 @@
 %patch18
 %patch20
 %patch21
+%patch22
 %patch24
 %patch31
 %patch32

++++++ mc-extfs-helpers-urar.patch ++++++
--- src/vfs/extfs/helpers/urar.in.orig  2013-11-12 18:27:16.000000000 +0100
+++ src/vfs/extfs/helpers/urar.in       2013-11-12 19:05:31.000000000 +0100
@@ -42,14 +42,36 @@
      $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)
-       $1="drwxr-xr-x"
-    else
-       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="";
+
+    ### split line, save n-fields and save seperators in 'seps'
+    nf = split($0, fields, " ", seps);
+
+    ### split date for reformatting
+    split(fields[5], date, "-");
+
+    ### 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--";
+        }
+    }
+
+    ### join filename from fields 8 .. nf (saved above)
+    for(i = 8; i <= nf; i++) {
+        name=name fields[i] seps[i];
+    }
+    ### remove padding blanks from short names
+    if (length(name)<13) {
+        sub(" *$", "", name);
+    }
+
+    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);
 }'
 }
 

-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to