diff options
author | Philipp Gesang <phg42.2a@gmail.com> | 2013-05-10 15:30:21 +0200 |
---|---|---|
committer | Philipp Gesang <phg42.2a@gmail.com> | 2013-05-10 15:30:21 +0200 |
commit | 590373869f37b8e3a6f5167b6dad502e0397b4b4 (patch) | |
tree | 4ef476ac5f89cf4512fa29ce0cb7ddf29b8415fc | |
parent | 31cae80a509978639c4c19948260f36015489d69 (diff) | |
download | luaotfload-590373869f37b8e3a6f5167b6dad502e0397b4b4.tar.gz |
set node mode more accurately
-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 |