From a219b5603e6b293375f08a4d8d6b546c92c02fd3 Mon Sep 17 00:00:00 2001 From: XeonSquared Date: Sat, 9 Nov 2019 15:56:25 +1100 Subject: [PATCH] added the ability to unmount filesystems, removed fs mounting stuff on its own --- module/fs.lua | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/module/fs.lua b/module/fs.lua index 0bbc7dc..3410bef 100644 --- a/module/fs.lua +++ b/module/fs.lua @@ -97,12 +97,16 @@ function fs.rename(from,to) -- moves file *from* to *to* end function fs.mount(path,proxy) -- mounts the filesystem *proxy* to the mount point *path* if it is a directory. BYO proxy. - if fs.isDirectory(path) then + if fs.isDirectory(path) and not fsmounts[table.concat(fs.segments(path),"/")] then fsmounts[table.concat(fs.segments(path),"/")] = proxy return true end return false, "path is not a directory" end +function fs.umount(path) + local fsi,_ = fs.resolve(path) + fsmounts[fsi] = nil +end function fs.mounts() -- returns a table containing the mount points of all mounted filesystems local rt = {} @@ -127,9 +131,5 @@ if computer.getBootAddress then fs.makeDirectory("boot") fs.mount("boot",component.proxy(computer.getBootAddress())) end -for addr, _ in component.list("filesystem") do - fs.makeDirectory(addr:sub(1,3)) - fs.mount(addr:sub(1,3),component.proxy(addr)) -end end