X-Git-Url: https://git.madduck.net/etc/awesome.git/blobdiff_plain/c580e13015554a32dbc93173b5b40dd1dec1ea78..6f7dae29dc64fb5adc5677d24eaba90ea54510f9:/widgets/maildir.lua

diff --git a/widgets/maildir.lua b/widgets/maildir.lua
index 8fe097e..eed6138 100644
--- a/widgets/maildir.lua
+++ b/widgets/maildir.lua
@@ -8,12 +8,13 @@
 --]]
 
 local newtimer        = require("lain.helpers").newtimer
+local read_pipe       = require("lain.helpers").read_pipe
 
 local wibox           = require("wibox")
 
 local util            = require("lain.util")
 
-local io              = io
+local io              = { popen  = io.popen }
 local os              = { getenv = os.getenv }
 local pairs           = pairs
 local string          = { len    = string.len,
@@ -50,10 +51,9 @@ local function worker(args)
                 -- match files that begin with a dot.
                 -- Afterwards the length of this string is the number of
                 -- new mails in that box.
-                local np = io.popen("find " .. line ..
+                local mailstring = read_pipe("find " .. line ..
                                     "/new -mindepth 1 -type f " ..
                                     "-not -name '.*' -printf a")
-                local mailstring = np:read("*all")
 
                 -- Strip off leading mailpath.
                 local box = string.match(line, mailpath .. "/*([^/]+)")
@@ -65,10 +65,11 @@ local function worker(args)
             end
         until line == nil
 
+	p:close()
         table.sort(boxes)
 
         newmail = "no mail"
-        --Count the total number of mails irrespective of where it was found
+        -- Count the total number of mails irrespective of where it was found
         total = 0
 
         for box, number in pairs(boxes)