From 3dbbb562a45a0982546ff21e62743ddfabc4ce56 Mon Sep 17 00:00:00 2001
From: Francois-Rene Rideau <fare@tunes.org>
Date: Thu, 11 Mar 2010 09:33:09 -0500
Subject: [PATCH] Fix omission while renaming SPLIT to SPLIT-STRING.

---
 asdf.lisp         | 25 +++++++++++++------------
 test/run-tests.sh |  6 ++++--
 2 files changed, 17 insertions(+), 14 deletions(-)

diff --git a/asdf.lisp b/asdf.lisp
index 84219350..6bf047e4 100644
--- a/asdf.lisp
+++ b/asdf.lisp
@@ -531,18 +531,19 @@ return a list.
 If MAX is specified, then no more than max(1,MAX) components will be returned,
 starting the separation from the end, e.g. when called with arguments
  \"a.b.c.d.e\" :max 3 :separator \".\" it will return (\"a.b.c\" \"d\" \"e\")."
-  (let ((list nil) (words 0) (end (length string)))
-    (flet ((separatorp (char) (find char separator))
-           (done () (return-from split (cons (subseq string 0 end) list))))
-      (loop
-        :for start = (if (and max (>= words (1- max)))
-                         (done)
-                         (position-if #'separatorp string :end end :from-end t)) :do
-        (when (null start)
-          (done))
-        (push (subseq string (1+ start) end) list)
-        (incf words)
-        (setf end start)))))
+  (block nil
+    (let ((list nil) (words 0) (end (length string)))
+      (flet ((separatorp (char) (find char separator))
+             (done () (return (cons (subseq string 0 end) list))))
+        (loop
+          :for start = (if (and max (>= words (1- max)))
+                           (done)
+                           (position-if #'separatorp string :end end :from-end t)) :do
+          (when (null start)
+            (done))
+          (push (subseq string (1+ start) end) list)
+          (incf words)
+          (setf end start))))))
 
 (defun split-name-type (filename)
   (destructuring-bind (name &optional type)
diff --git a/test/run-tests.sh b/test/run-tests.sh
index b9f4cf0a..f3962c6a 100755
--- a/test/run-tests.sh
+++ b/test/run-tests.sh
@@ -55,8 +55,10 @@ do_tests() {
   command=$1 eval=$2 fasl_ext=$3
   rm -f *.$fasl_ext ~/.cache/common-lisp/"`pwd`"/*.$fasl_ext || true
   ( cd .. && $command $eval '(load "test/compile-asdf.lisp")' )
-  if [ $? -eq 0 ] ; then
-    echo "Compiled OK"
+  if [ $? -ne 0 ] ; then
+    echo "Compilation FAILED" >&2
+  else
+    echo "Compiled OK" >&2
     test_count=0
     test_pass=0
     test_fail=0
-- 
GitLab