From d8be0561fba812e6296ad7d0eb2e17bd7f25cf12 Mon Sep 17 00:00:00 2001 From: Doug Coleman <doug.coleman@gmail.com> Date: Sun, 30 Aug 2009 22:49:35 -0500 Subject: [PATCH] make a struct for dirents on linux, not a <c-object> --- basis/io/directories/unix/linux/linux.factor | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/basis/io/directories/unix/linux/linux.factor b/basis/io/directories/unix/linux/linux.factor index ba5b27dacd..3af4c09f28 100644 --- a/basis/io/directories/unix/linux/linux.factor +++ b/basis/io/directories/unix/linux/linux.factor @@ -1,10 +1,11 @@ ! Copyright (C) 2009 Doug Coleman. ! See http://factorcode.org/license.txt for BSD license. -USING: alien.c-types io.directories.unix kernel system unix ; +USING: alien.c-types io.directories.unix kernel system unix +classes.struct ; IN: io.directories.unix.linux -M: unix find-next-file ( DIR* -- byte-array ) - "dirent" <c-object> +M: unix find-next-file ( DIR* -- dirent ) + dirent <struct> f <void*> [ readdir64_r 0 = [ (io-error) ] unless ] 2keep *void* [ drop f ] unless ;