diff options
| -rw-r--r-- | luaotfload-database.lua | 13 | 
1 files changed, 5 insertions, 8 deletions
diff --git a/luaotfload-database.lua b/luaotfload-database.lua index 8c9f42e..22f9455 100644 --- a/luaotfload-database.lua +++ b/luaotfload-database.lua @@ -748,19 +748,14 @@ resolve = function (_, _, specification) -- the 1st two parameters are used by C          if     name == family              or name == metafamily          then -            if     style == prefmodifiers -                or style == subfamily -            then +            if style == prefmodifiers then -- exact                  local continue                  exact, continue = add_to_match(                      exact,   optsize, dsnsize, size,                      minsize, maxsize, face)                  if continue == false then break end - -            elseif prefmodifiers == "regular" -                or subfamily     == "regular" +            elseif prefmodifiers == "regular" then                  --- TODO this match should be performed when building the db -            then                  fallback = face              elseif name == fullname                  or name == pfullname @@ -772,7 +767,9 @@ resolve = function (_, _, specification) -- the 1st two parameters are used by C                      exact,   optsize, dsnsize, size,                      minsize, maxsize, face)                  if continue == false then break end -            elseif synonym_set[style] and +            elseif style     == subfamily --- unreliable (see Ad. Garm. Pro) +                or subfamily == "regular" +                or synonym_set[style] and                      (synonym_set[style][prefmodifiers] or                       synonym_set[style][subfamily])                  or synonym_set.regular[prefmodifiers]  | 
