[[project @ 2001-05-28 22:35:08 by ghouston] ghouston**20010528223508 Ignore-this: 9bfa404993c919799232ad85e8c53f33 * filesys.scm (create-directory, create-fifo, create-hard-link, create-symlink, create-file-thing): fixed. for some reason these had never been ported to guile. thanks to Paul Emsley for pointing out that create-directory didn't work. ] hunk ./ChangeLog 1 +2001-05-28 Gary Houston + + * filesys.scm (create-directory, create-fifo, create-hard-link, + create-symlink, create-file-thing): fixed. for some reason + these had never been ported to guile. thanks to Paul Emsley + for pointing out that create-directory didn't work. + hunk ./filesys.scm 54 - ;; MAKEIT returns #f if win, errno if lose. - (cond ((makeit fname) => - (lambda (err) - (if (not (= err errno/exist)) - (errno-error err syscall fname) - - ;; FNAME exists. Nuke it and retry? - (cond ((if (eq? override? 'query) - (query) - override?) - (delete-filesys-object fname) - (loop #t)) - (else - (errno-error err syscall fname)))))))))) - + (catch 'system-error + (lambda () (makeit fname)) + (lambda (tag proc msg msg-args rest) + (let ((errno (car rest))) + (if (= errno errno/exist) + ;; FNAME exists. Nuke it and retry? + (cond ((if (eq? override? 'query) + (query) + override?) + (delete-filesys-object fname) + (loop #t)) + (else + (scm-error tag proc msg msg-args rest))) + (scm-error tag proc msg msg-args rest)))))))) hunk ./filesys.scm 76 - (lambda (dir) (create-directory/errno dir perms)) + (lambda (dir) (mkdir dir perms)) hunk ./filesys.scm 86 - (lambda (fifo) (create-fifo/errno fifo perms)) + (lambda (fifo) (mknod fifo 'fifo perms 0)) hunk ./filesys.scm 94 - (create-hard-link/errno old-fname new-fname)) + (link old-fname new-fname)) hunk ./filesys.scm 101 - (lambda (symlink) - (create-symlink/errno old-fname symlink)) + (lambda (new-fname) + (symlink old-fname new-fname))