summaryrefslogtreecommitdiff
blob: f62d3bea44cab8e822b2155a7636dccc08256300 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
--- texmf-dist/tex/luatex/lualibs/lualibs-dir.lua	2010-05-29 02:25:56.000000000 -0700
+++ texmf-dist/tex/luatex/lualibs/lualibs-dir.lua	2011-01-13 22:05:56.766564001 -0800
@@ -26,15 +26,15 @@
 local walkdir    = lfs.dir
 
 local function glob_pattern(path,patt,recurse,action)
-    local ok, scanner
+    local ok, scanner, dirobj
     if path == "/" then
-        ok, scanner = xpcall(function() return walkdir(path..".") end, function() end) -- kepler safe
+        ok, scanner, dirobj = xpcall(function() return walkdir(path..".") end, function() end) -- kepler safe
     else
-        ok, scanner = xpcall(function() return walkdir(path)      end, function() end) -- kepler safe
+        ok, scanner, dirobj = xpcall(function() return walkdir(path)      end, function() end) -- kepler safe
     end
     if ok and type(scanner) == "function" then
         if not find(path,"/$") then path = path .. '/' end
-        for name in scanner do
+        for name in scanner, dirobj do
             local full = path .. name
             local mode = attributes(full,'mode')
             if mode == 'file' then
@@ -51,16 +51,16 @@
 dir.glob_pattern = glob_pattern
 
 local function collect_pattern(path,patt,recurse,result)
-    local ok, scanner
+    local ok, scanner, dirobj
     result = result or { }
     if path == "/" then
-        ok, scanner = xpcall(function() return walkdir(path..".") end, function() end) -- kepler safe
+        ok, scanner, dirobj = xpcall(function() return walkdir(path..".") end, function() end) -- kepler safe
     else
-        ok, scanner = xpcall(function() return walkdir(path)      end, function() end) -- kepler safe
+        ok, scanner, dirobj = xpcall(function() return walkdir(path)      end, function() end) -- kepler safe
     end
     if ok and type(scanner) == "function" then
         if not find(path,"/$") then path = path .. '/' end
-        for name in scanner do
+        for name in scanner, dirobj do
             local full = path .. name
             local attr = attributes(full)
             local mode = attr.mode