summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPhilipp Gesang <phg42.2a@gmail.com>2014-01-03 18:14:20 +0100
committerPhilipp Gesang <phg42.2a@gmail.com>2014-01-03 20:20:50 +0100
commitcfd807af6c4f27fc8bc95744cd1c4da8a07559e1 (patch)
tree47f35da41a38fa82953f154127c04ba2845c9108
parent56ac9fbd9adf570501e358334adef356c572905b (diff)
downloadluaotfload-cfd807af6c4f27fc8bc95744cd1c4da8a07559e1.tar.gz
[db] handle missing metadata table
Fixes issue #164, hopefully.
-rw-r--r--luaotfload-database.lua11
1 files changed, 10 insertions, 1 deletions
diff --git a/luaotfload-database.lua b/luaotfload-database.lua
index b22afd7..4be54d6 100644
--- a/luaotfload-database.lua
+++ b/luaotfload-database.lua
@@ -574,7 +574,16 @@ load_names = function (dry_run)
report ("info", 3, "db", "Loading took %0.f ms.",
1000 * (osgettimeofday () - starttime))
- local db_version, nms_version = data.meta.version, names.version
+ local db_version, nms_version
+ if data.meta then
+ db_version = data.meta.version
+ else
+ --- Compatibility branch; the version info used to be
+ --- stored in the table root which is why updating from
+ --- an earlier index version broke.
+ db_version = data.version or -42 --- invalid
+ end
+ nms_version = names.version
if db_version ~= nms_version then
report ("both", 0, "db",
[[Version mismatch; expected %4.3f, got %4.3f.]],