From d00265c5b8885c4421886bc7b6fba5d8abd417c8 Mon Sep 17 00:00:00 2001
From: rtoy <rtoy>
Date: Tue, 31 May 2011 13:14:39 +0000
Subject: [PATCH] Ignore shell wildcards when determining next version.

Comment from Paul Foley:

  Problem: FD-OPEN calls NEXT-VERSION with the namestring;
  NEXT-VERSION calls EXTRACT-NAME-TYPE-AND-VERSION, which builds a
  "pattern" when it sees globbing characters in the name, and
  NEXT-VERSION promptly crashes when it tries to concatenate strings.

  Fix: Bind *IGNORE-WILDCARDS* to T in NEXT-VERSION (in
  fd-stream.lisp)
---
 code/fd-stream.lisp | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/code/fd-stream.lisp b/code/fd-stream.lisp
index 5ad4a379f..c6fd805e3 100644
--- a/code/fd-stream.lisp
+++ b/code/fd-stream.lisp
@@ -5,7 +5,7 @@
 ;;; Carnegie Mellon University, and has been placed in the public domain.
 ;;;
 (ext:file-comment
-  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/fd-stream.lisp,v 1.123 2011/02/17 02:55:45 rtoy Exp $")
+  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/fd-stream.lisp,v 1.124 2011/05/31 13:14:39 rtoy Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -1948,7 +1948,8 @@
 ;;;
 (defun next-version (name)
   (declare (type simple-string name))
-  (let* ((sep (position #\/ name :from-end t))
+  (let* ((*ignore-wildcards* t)
+	 (sep (position #\/ name :from-end t))
 	 (base (if sep (subseq name 0 (1+ sep)) ""))
 	 (dir (unix:open-dir base)))
     (multiple-value-bind (name type version)
-- 
GitLab