From: Mark Wooding Date: Sun, 17 Jul 2011 20:51:16 +0000 (+0100) Subject: safely.lisp: More on the CLisp RENAME-FILE mess. X-Git-Url: https://git.distorted.org.uk/~mdw/lisp/commitdiff_plain/9224720f63a3a3f810ce03dc4018e23a0c6d8492?hp=9224720f63a3a3f810ce03dc4018e23a0c6d8492 safely.lisp: More on the CLisp RENAME-FILE mess. The :IF-EXISTS option is only in very new versions of CLisp. It turns out that the bizarre double-pathname-merging bug in POSIX:COPY-FILE doesn't cause trouble if the source is absolute (unsurprising, in retrospect) so I could use TRUENAME to dig my way out of this mess; but COPY-FILE will clobber the target file before looking to see whether the source succeeds (unless persuaded otherwise with :IF-EXISTS, which only works if RENAME-FILE understands that option). Give up, and use rename(2) through the FFI. ---