]> sourceware.org Git - lvm2.git/commitdiff
Fix scripts/relpath.awk to work with mawk
authorMikulas Patocka <mpatocka@redhat.com>
Fri, 21 May 2010 15:28:16 +0000 (15:28 +0000)
committerMikulas Patocka <mpatocka@redhat.com>
Fri, 21 May 2010 15:28:16 +0000 (15:28 +0000)
length(array) is specific to GNU awk and doesn't work in mawk.
Use a return value of "split" function to indicate array size, this is
supported in both gawk and mawk.

This patch fixes the following errors during "make install" when mawk is
installed as a default awk.

mawk: scripts/relpath.awk: line 25: illegal reference to array from
mawk: scripts/relpath.awk: line 25: illegal reference to array to
mawk: scripts/relpath.awk: line 27: illegal reference to array from
mawk: scripts/relpath.awk: line 32: illegal reference to array to

Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
WHATS_NEW
scripts/relpath.awk

index bc1babf9b830ad375ebca42a56fce9c2e9d9eed4..6989e64536676c7cbbaaffd7b838d4ccb6bbb3da 100644 (file)
--- a/WHATS_NEW
+++ b/WHATS_NEW
@@ -1,5 +1,6 @@
 Version 2.02.67 -
 ===============================
+  Fixed scripts/relpath.awk to work in mawk
   Add _add_partial_replicator_to_dtree().
   Activation code read and releases also remote VGs (Replicator).
   Check for missing VGs before taking lock_vol (Replicator).
index 26fe1eeaad6b6d5b837fde2ece35f86db166a8ae..9195ed8fc17a5365e64bbd13aa0bddd57860f4a9 100755 (executable)
 # -> ../../e/f/
 
 {
-       split($1, from, "/");
-       split($2, to, "/") ;
+       length_from = split($1, from, "/");
+       length_to = split($2, to, "/") ;
        l = 1;
-       while (l <= length(from) && l <= length(to) && from[l] == to[l])
+       while (l <= length_from && l <= length_to && from[l] == to[l])
                l++;
-       for (i = l; i <= length(from) && length(from[i]); i++) {
+       for (i = l; i <= length_from && length(from[i]); i++) {
                if (i > l)
                        p = sprintf("%s/", p);
                p = sprintf("%s..", p);
        }
-       for (i = l; i <= length(to) && length(to[i]); i++) {
+       for (i = l; i <= length_to && length(to[i]); i++) {
                if (length(p) > 0)
                        p = sprintf("%s/", p);
                p = sprintf("%s%s", p, to[i]);
This page took 0.110937 seconds and 5 git commands to generate.