On some platforms (including Solaris, FWIW), the character "." is one of
the characters mkstemp can use when filling in an "XXXXXX" template. When
this (randomly) occurs during the running of this test, PATHNAME-NAME, of
course breaks on the last such random "." character, and the test fails in
a way which will not repeat until the next time such a character is
randomly chosen.
Since readdir actually returns a string, break the string on the first "."
explicitly, instead of making a path from the string and calling
pathname-name.
This will need to be revisited if we add mkstemp support on win32 in the
future.
:type (format nil "~AXXXXXX"
(make-string n :initial-element #\x))
:defaults default))
- (let ((pathname (sb-ext:parse-native-namestring temp)))
(unwind-protect
- (values (integerp fd) (pathname-name pathname))
- (delete-file temp)))))
- t "mkstemp-1")
+ (values (integerp fd) (subseq temp 0 (position #\. temp)))
+ (delete-file temp))))
+ t "/tmp/mkstemp-1")
(deftest envstuff
(let ((name1 "ASLIFJLSDKFJKAHGSDKLJH")
;;; checkins which aren't released. (And occasionally for internal
;;; versions, especially for internal versions off the main CVS
;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".)
-"1.0.46.22"
+"1.0.46.23"