On Thu, Dec 6, 2018 at 11:17 AM Procházka Lukáš Ing. <LPr@pontex.cz> wrote:
Hello,

I'm using the following code, mentioned here some time ago, to get some info about PDF:

----
\startluacode
figures.getinfo = function(name, page)
     if type(name) == "string" then
         name = { name = name, page = page }
     end
     if name.name then
         local data = figures.push(name)

         --figures.identify()
local ok, res = pcall(figures.identify)
print(">>1", ok, res)

         --figures.check()
local ok, res = pcall(figures.check)
print(">>2", ok, res)

         figures.pop()
         return data
     end
end

local data = figures.getinfo("NonExisting.pdf")

\stopluacode
----

The problem is that once the PDF file doesn't exist, the function causes ConTeXt to exit, even when I enclose 'figure.check()' into the 'pcall' (to be handled like try/catch mechanism).

Is there a way so that the function 'figures.getinfo()' does't exit ConTeXt, it just returns 'nil', or even gives info which directories (or even which file types) were searched?

TIA.

something like that (untested), eventaully to be wrapped  in a your function
local fileone = "NonExisting.pdf" 
local data
if not lfs.isfile(fileone) then
    report("unknown file %a",fileone)
else 
 data = figures.getinfo("NonExisting.pdf")
end

--
luigi