summaryrefslogtreecommitdiff
path: root/src/luaotfload-database.lua
diff options
context:
space:
mode:
authorPhilipp Gesang <phg@phi-gamma.net>2015-06-19 21:49:05 +0200
committerPhilipp Gesang <phg@phi-gamma.net>2015-06-19 21:49:09 +0200
commit4a4d051f31809d47dbb382184f8bdbd6d71560ce (patch)
treed753748ec9da5ff0b6f13a65185d40110509898e /src/luaotfload-database.lua
parent4252a41ffc8e6851cd634f3ae38b4ed38b52ff80 (diff)
downloadluaotfload-4a4d051f31809d47dbb382184f8bdbd6d71560ce.tar.gz
[db,tool] prevent database rebuild when querying version info
Reported by /u/ThomasFehige on Github: https://github.com/lualatex/luaotfload/issues/275#issuecomment-113515484
Diffstat (limited to 'src/luaotfload-database.lua')
-rw-r--r--src/luaotfload-database.lua16
1 files changed, 12 insertions, 4 deletions
diff --git a/src/luaotfload-database.lua b/src/luaotfload-database.lua
index 099c256..1831ca3 100644
--- a/src/luaotfload-database.lua
+++ b/src/luaotfload-database.lua
@@ -482,8 +482,8 @@ local fonts_reloaded = false
--- limit output when approximate font matching (luaotfload-tool -F)
local fuzzy_limit = 1 --- display closest only
---- bool? -> dbobj
-load_names = function (dry_run)
+--- bool? -> -> bool? -> dbobj option
+load_names = function (dry_run, no_rebuild)
local starttime = osgettimeofday ()
local foundname, data = load_lua_file (config.luaotfload.paths.index_path_lua)
@@ -519,6 +519,11 @@ load_names = function (dry_run)
end
end
else
+ if no_rebuild == true then
+ report ("both", 2, "db",
+ [[Database does not exist, skipping rebuild though.]])
+ return false
+ end
report ("both", 0, "db",
[[Font names database not found, generating new one.]])
report ("both", 0, "db",
@@ -545,8 +550,11 @@ access_font_index = function ()
end
getmetadata = function ()
- if not name_index then name_index = load_names() end
- return tablefastcopy (name_index.meta)
+ if not name_index then
+ name_index = load_names (false, true)
+ if name_index then return tablefastcopy (name_index.meta) end
+ end
+ return false
end
--- unit -> unit