diff options
Diffstat (limited to 'script-beta')
-rw-r--r-- | script-beta/parser/guide.lua | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/script-beta/parser/guide.lua b/script-beta/parser/guide.lua index 8058328c..d5f16486 100644 --- a/script-beta/parser/guide.lua +++ b/script-beta/parser/guide.lua @@ -3554,10 +3554,7 @@ function m.searchInfer(status, obj) obj = value end - local cache, makeCache - if status.deep then - cache, makeCache = m.getRefCache(status, obj, 'infer') - end + local cache, makeCache = m.getRefCache(status, obj, 'infer') if cache then for i = 1, #cache do status.results[#status.results+1] = cache[i] @@ -3569,6 +3566,14 @@ function m.searchInfer(status, obj) status.cache.clock = status.cache.clock or osClock() end + if not status.cache.lockInfer then + status.cache.lockInfer = {} + end + if status.cache.lockInfer[obj] then + return + end + status.cache.lockInfer[obj] = true + local checked = m.inferCheckDoc(status, obj) or m.inferCheckUpDoc(status, obj) or m.inferCheckFieldDoc(status, obj) |