From 9b39d75083ee4aeaac912218d228280d2837f875 Mon Sep 17 00:00:00 2001 From: Doug Coleman Date: Sat, 4 Jan 2020 09:07:32 -0600 Subject: [PATCH] io.files.info: fix circularity regression in file-systems on linux --- basis/io/files/info/info.factor | 6 ++++-- basis/io/files/info/unix/linux/linux.factor | 3 +++ 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/basis/io/files/info/info.factor b/basis/io/files/info/info.factor index baf41ab88c..555620aa33 100644 --- a/basis/io/files/info/info.factor +++ b/basis/io/files/info/info.factor @@ -34,8 +34,10 @@ HOOK: file-readable? os ( path -- ? ) HOOK: file-writable? os ( path -- ? ) HOOK: file-executable? os ( path -- ? ) -: mount-points ( -- assoc ) - file-systems [ [ mount-point>> canonicalize-path-full ] keep ] H{ } map>assoc ; +HOOK: mount-points os ( -- assoc ) + +M: object mount-points + file-systems [ [ mount-point>> ] keep ] H{ } map>assoc ; : (find-mount-point-info) ( path assoc -- mtab-entry ) [ resolve-symlinks canonicalize-path-full ] dip diff --git a/basis/io/files/info/unix/linux/linux.factor b/basis/io/files/info/unix/linux/linux.factor index 1bf37532f1..e179354685 100644 --- a/basis/io/files/info/unix/linux/linux.factor +++ b/basis/io/files/info/unix/linux/linux.factor @@ -78,6 +78,9 @@ frequency pass-number ; } cleave ] [ { [ libc-error? ] [ errno>> EACCES = ] } 1&& ] ignore-error/f ; +M: linux mount-points + parse-mtab [ [ mount-point>> ] keep ] H{ } map>assoc ; + M: linux file-systems parse-mtab [ mtab-entry>file-system-info ] map sift ;