From 99cc262c63fe6a8761f6d497bffe971b99391e2e Mon Sep 17 00:00:00 2001 From: Ted Trask Date: Mon, 23 Nov 2009 10:03:01 +0000 Subject: Fixed available media list to include boot media not in fstab. --- lbu-model.lua | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'lbu-model.lua') diff --git a/lbu-model.lua b/lbu-model.lua index 204d958..873d73d 100644 --- a/lbu-model.lua +++ b/lbu-model.lua @@ -39,12 +39,25 @@ end local function availablemedias() local medias = {} + local found = {} + -- First, look in fstab local fstab = fs.read_file("/etc/fstab") or "" for media in string.gmatch(fstab, "/media/(%w+)%s") do if not string.find(media, "^cdrom") and not string.find(media, "^dvd") then medias[#medias+1] = media + found[media] = true end end + -- Then, look in result of 'mount' + local f = io.popen("mount") + local mount = f:read("*a") + f:close() + for media in string.gmatch(mount, "/media/(%w+)%s") do + if not string.find(media, "^cdrom") and not string.find(media, "^dvd") and not found[media] then + medias[#medias+1] = media + end + end + table.sort(medias) return medias end -- cgit v1.2.3