summaryrefslogtreecommitdiff
path: root/src/luaotfload-tool.lua
diff options
context:
space:
mode:
Diffstat (limited to 'src/luaotfload-tool.lua')
-rwxr-xr-xsrc/luaotfload-tool.lua19
1 files changed, 12 insertions, 7 deletions
diff --git a/src/luaotfload-tool.lua b/src/luaotfload-tool.lua
index 4b4dc50..376aa39 100755
--- a/src/luaotfload-tool.lua
+++ b/src/luaotfload-tool.lua
@@ -1160,16 +1160,21 @@ actions.query = function (job)
tmpspec.size = 655360 --- assume 10pt
end
- local foundname, subfont, success
+ local foundname, subfont, success, needle
- if tmpspec.lookup == "name"
- or tmpspec.lookup == "anon" --- not *exactly* as resolvers.anon
- then
- foundname, _, success = fonts.names.lookup_font_name (tmpspec)
- if foundname then
- foundname, _, success = fonts.names.lookup_font_file (foundname)
+ if tmpspec.lookup == "name" then
+ if fonts.definers.resolvers.name (tmpspec) then
+ needle = tmpspec.resolved
+ end
+ elseif tmpspec.lookup == "anon" then
+ if fonts.definers.resolvers.anon (tmpspec) then
+ needle = tmpspec.resolved or tmpspec.name
end
elseif tmpspec.lookup == "file" then
+ needle = tmpspec.name
+ end
+
+ if needle then
foundname, _, success = fonts.names.lookup_font_file (tmpspec.name)
end