summaryrefslogtreecommitdiff
path: root/src/luaotfload-parsers.lua
diff options
context:
space:
mode:
Diffstat (limited to 'src/luaotfload-parsers.lua')
-rw-r--r--src/luaotfload-parsers.lua9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/luaotfload-parsers.lua b/src/luaotfload-parsers.lua
index 71e539d..b190c2c 100644
--- a/src/luaotfload-parsers.lua
+++ b/src/luaotfload-parsers.lua
@@ -591,11 +591,12 @@ local parenthesized = function (p) return P"(" * ws * p * ws * P")" end
local comboidxpat = Cg(combouint, "idx")
local comboidpat = Cg(combouint, "id" )
-local combocharspat = comboidpat * combodefsep * Cg(Ct(combochars^1), "chars")
+local combocharspat = Cg(P"fallback" * Cc(true) + Ct(combochars^1), "chars")
+local comboidcharspat = comboidpat * combodefsep * combocharspat
-local comboidx = parenthesized (comboidxpat ) + comboidxpat
-local comboid = parenthesized (comboidpat ) + comboidpat
-local comboidchars = parenthesized (combocharspat) + combocharspat
+local comboidx = parenthesized (comboidxpat ) + comboidxpat
+local comboid = parenthesized (comboidpat ) + comboidpat
+local comboidchars = parenthesized (comboidcharspat) + comboidcharspat
local combodef1 = Ct(comboidx * combomapsep * comboid) --> no chars
local combodef = Ct(comboidx * combomapsep * comboidchars)