From 871b3f7f645daafcfa4d3ed7ad72bd80b80f8022 Mon Sep 17 00:00:00 2001
From: Christophe Rhodes <csr21@cantab.net>
Date: Tue, 4 Dec 2001 15:58:31 +0000
Subject: [PATCH] Fix for punctuation in unix-string-common-casify

---
 asdf.lisp | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/asdf.lisp b/asdf.lisp
index 299a0d95..ba3acc35 100644
--- a/asdf.lisp
+++ b/asdf.lisp
@@ -85,13 +85,15 @@
    (pathname :initarg :pathname)))
 
 (defmethod string-unix-common-casify (string &key (start 0) end)
+  "Converts a string assumed local to a Unix filesystem into its
+:common :case partner."
   (unless end
     (setf end (length string)))
   (let ((result (copy-seq string)))
     (cond
-      ((every (lambda (x) (and (char>= x #\A) (char<= x #\Z))) (subseq string start end))
+      ((every (lambda (x) (or (not (alpha-char-p x)) (and (char>= x #\A) (char<= x #\Z)))) (subseq string start end))
        (nstring-downcase result :start start :end end))
-      ((every (lambda (x) (and (char>= x #\a) (char<= x #\z))) (subseq string start end))
+      ((every (lambda (x) (or (not (alpha-char-p x)) (and (char>= x #\a) (char<= x #\z)))) (subseq string start end))
        (nstring-upcase result :start start :end end))
       (t result))))
 
-- 
GitLab