diff options
Diffstat (limited to 'luaotfload-features.lua')
-rw-r--r-- | luaotfload-features.lua | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/luaotfload-features.lua b/luaotfload-features.lua index 8852596..220b362 100644 --- a/luaotfload-features.lua +++ b/luaotfload-features.lua @@ -337,7 +337,9 @@ local import_values = { --- That’s what the 1.x parser did, not quite as graciously, --- with an array of branch expressions. -- "style", "optsize",--> from slashed notation; handled otherwise - "lookup", "sub", "mode", + { "lookup", false }, + { "sub", false }, + { "mode", true }, } local lookup_types = { "anon", "file", "name", "path" } @@ -411,11 +413,14 @@ local handle_request = function (specification) end for n=1, #import_values do - local feat = import_values[n] + local feat = import_values[n][1] + local keep = import_values[n][2] local newvalue = request.features[feat] if newvalue then specification[feat] = request.features[feat] - --request.features[feat] = nil + if not keep then + request.features[feat] = nil + end end end |