X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=contrib%2Fsb-posix%2Fposix-tests.lisp;h=1108583aac43e55d839458691d9239819c57b56d;hb=8d490a4d6b9d7f156cf503826b3e3195e6f3ad39;hp=5c16e7aae8a9c42d6e9c05975a9a499d2ed7ce3c;hpb=794cf077e3b1d4368f1103f393a4a56abd09e72a;p=sbcl.git diff --git a/contrib/sb-posix/posix-tests.lisp b/contrib/sb-posix/posix-tests.lisp index 5c16e7a..1108583 100644 --- a/contrib/sb-posix/posix-tests.lisp +++ b/contrib/sb-posix/posix-tests.lisp @@ -355,19 +355,26 @@ (sb-posix:syscall-errno c))) #.sb-posix::eisdir) +#-(and x86-64 linux) (deftest fcntl.1 (let ((fd (sb-posix:open "/dev/null" sb-posix::o-nonblock))) (= (sb-posix:fcntl fd sb-posix::f-getfl) sb-posix::o-nonblock)) t) - +;; On AMD64/Linux O_LARGEFILE is always set, even though the whole +;; flag makes no sense. +#+(and x86-64 linux) +(deftest fcntl.1 + (let ((fd (sb-posix:open "/dev/null" sb-posix::o-nonblock))) + (/= 0 (logand (sb-posix:fcntl fd sb-posix::f-getfl) + sb-posix::o-nonblock))) + t) (deftest opendir.1 (let ((dir (sb-posix:opendir "/"))) - (if (sb-alien:null-alien dir) - (progn (sb-posix:closedir dir) - t) - nil)) - t) + (unwind-protect (sb-alien:null-alien dir) + (unless (sb-alien:null-alien dir) + (sb-posix:closedir dir)))) + nil) (deftest readdir.1 (let ((dir (sb-posix:opendir "/")))