[cmucl-cvs] CMUCL commit: src/code (fd-stream.lisp)
Raymond Toy
rtoy at common-lisp.net
Tue May 31 13:14:39 UTC 2011
Date: Tuesday, May 31, 2011 @ 06:14:39
Author: rtoy
Path: /project/cmucl/cvsroot/src/code
Modified: fd-stream.lisp
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)
----------------+
fd-stream.lisp | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
Index: src/code/fd-stream.lisp
diff -u src/code/fd-stream.lisp:1.123 src/code/fd-stream.lisp:1.124
--- src/code/fd-stream.lisp:1.123 Wed Feb 16 18:55:45 2011
+++ src/code/fd-stream.lisp Tue May 31 06:14:39 2011
@@ -5,7 +5,7 @@
;;; Carnegie Mellon University, and has been placed in the public domain.
;;;
(ext:file-comment
- "$Header: /project/cmucl/cvsroot/src/code/fd-stream.lisp,v 1.123 2011/02/17 02:55:45 rtoy Exp $")
+ "$Header: /project/cmucl/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)
More information about the cmucl-cvs
mailing list