Better ls output fixing.
[users/heiko/exim.git] / test / runtest
index 31aaaa902e83364e7cbb081e9da724915447c2ec..69c6931b082c013f96e4b705c9710784d95e7219 100755 (executable)
@@ -598,7 +598,9 @@ RESET_AFTER_EXTRA_LINE_READ:
   # Handle only the Gnu and MacOS space, dot, plus and at-sign.  A full [[:graph:]]
   # unfortunately matches a non-ls linefull of dashes.
   # Allow the case where we've already picked out the file protection bits.
-  s/^([-d](?:[-r][-w][-SsTtx]){3})[.+@]?( +|$)/\1 /;
+  if (s/^([-d](?:[-r][-w][-SsTtx]){3})[.+@]?( +|$)/\1\2/) {
+    s/ +/ /g;
+  }
 
 
   # ======== Message sizes =========
@@ -938,7 +940,7 @@ if ($_[1]) { $_ = "u"; print "... update forced\n"; }
 #             [4] TRUE if this is a log file whose deliveries must be sorted
 #
 # Returns:    0 comparison succeeded or differences to be ignored
-#             1 comparison failed; files were updated (=> re-compare)
+#             1 comparison failed; files may have been updated (=> re-compare)
 #
 # Does not return if the user replies "Q" to a prompt.
 
@@ -1096,9 +1098,10 @@ if (-e $sf)
   print "\n";
   for (;;)
     {
-    interact("Continue, Update & retry, Quit? [Q] ", $force_update);
+    interact("Continue, Retry, Update & retry, Quit? [Q] ", $force_update);
     tests_exit(1) if /^q?$/i;
     return 0 if /^c$/i;
+    return 1 if /^r$/i;
     last if (/^u$/i);
     }
   }
@@ -1130,7 +1133,7 @@ return 1;
 #
 # Arguments: none
 # Returns:   0 if the output compared equal
-#            1 if files were updated and the test must be re-run
+#            1 if re-run needed (files may have been updated)
 
 sub check_output{
 my($yield) = 0;