From: Doug Coleman Date: Sat, 4 Jan 2020 15:07:32 +0000 (-0600) Subject: io.files.info: fix circularity regression in file-systems on linux X-Git-Tag: 0.99~3599 X-Git-Url: https://gitweb.factorcode.org/gitweb.cgi?p=factor.git;a=commitdiff_plain;h=4da6f51c9175225e8a9c34d3e545e6a2c40c8b7b io.files.info: fix circularity regression in file-systems on linux --- 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 ;