diff options
Diffstat (limited to 'tex/context/base/data-tex.lua')
-rw-r--r-- | tex/context/base/data-tex.lua | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/tex/context/base/data-tex.lua b/tex/context/base/data-tex.lua index 727964d1f..d597b26a2 100644 --- a/tex/context/base/data-tex.lua +++ b/tex/context/base/data-tex.lua @@ -15,8 +15,12 @@ local trace_locating = false trackers.register("resolvers.locating", function(v) local report_resolvers = logs.new("resolvers") +local resolvers = resolvers + local finders, openers, loaders = resolvers.finders, resolvers.openers, resolvers.loaders +local checkgarbage = utilities.garbagecollector and utilities.garbagecollector.check + function finders.generic(tag,filename,filetype) local foundname = resolvers.find_file(filename,filetype) if foundname and foundname ~= "" then @@ -135,7 +139,7 @@ function openers.text_opener(filename,file_handle,tag) logs.show_close(filename) file_handle:close() t = nil - collectgarbage("step") -- saves some memory + collectgarbage("step") -- saves some memory, maybe checkgarbage but no # end, handle = function() return file_handle @@ -175,7 +179,9 @@ function loaders.generic(tag,filename) report_resolvers("%s loader, file '%s' loaded",tag,filename) end local s = f:read("*a") - if garbagecollector and garbagecollector.check then garbagecollector.check(#s) end + if checkgarbage then + checkgarbage(#s) + end f:close() if s then return true, s, #s |