From 7754ab2c06acc091f252830666a58ac9e3a5ad97 Mon Sep 17 00:00:00 2001 From: Joe Groff Date: Fri, 18 Nov 2011 18:38:39 -0800 Subject: [PATCH] io.directories.unix: make copy-file copy perms Like the docs claim it does --- basis/io/directories/unix/unix.factor | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/basis/io/directories/unix/unix.factor b/basis/io/directories/unix/unix.factor index eabf1bf314..cbfd344e7b 100644 --- a/basis/io/directories/unix/unix.factor +++ b/basis/io/directories/unix/unix.factor @@ -5,7 +5,8 @@ combinators continuations destructors fry io io.backend io.directories io.encodings.binary io.encodings.utf8 io.files io.pathnames io.files.types kernel math.bitwise sequences system unix unix.stat vocabs.loader -classes.struct unix.ffi literals libc vocabs ; +classes.struct unix.ffi literals libc vocabs +io.files.info.unix ; IN: io.directories.unix CONSTANT: file-mode 0o0666 @@ -30,7 +31,9 @@ M: unix delete-directory ( path -- ) normalize-path [ rmdir ] unix-system-call drop ; M: unix copy-file ( from to -- ) - [ normalize-path ] bi@ call-next-method ; + [ normalize-path ] bi@ + [ call-next-method ] + [ [ file-permissions ] dip swap set-file-permissions ] 2bi ; : with-unix-directory ( path quot -- ) [ opendir dup [ (io-error) ] unless ] dip