diff options
author | Hans Hagen <pragma@wxs.nl> | 2014-05-27 13:38:00 +0200 |
---|---|---|
committer | Hans Hagen <pragma@wxs.nl> | 2014-05-27 13:38:00 +0200 |
commit | 4eeae72795fbf7fc58ee23fb4e1fe6d13bdb0711 (patch) | |
tree | 09bfec375e9fa88a1e1a8ab24e1ed09191178496 /tex/context/base/publ-ini.lua | |
parent | 0c462e21bcf750999c3cb1caa656569ac83b6af9 (diff) | |
download | context-4eeae72795fbf7fc58ee23fb4e1fe6d13bdb0711.tar.gz |
beta 2014.05.27 13:38
Diffstat (limited to 'tex/context/base/publ-ini.lua')
-rw-r--r-- | tex/context/base/publ-ini.lua | 36 |
1 files changed, 20 insertions, 16 deletions
diff --git a/tex/context/base/publ-ini.lua b/tex/context/base/publ-ini.lua index 34c8a1236..00e82f23f 100644 --- a/tex/context/base/publ-ini.lua +++ b/tex/context/base/publ-ini.lua @@ -272,28 +272,32 @@ setmetatableindex(usedentries,function(t,k) local internals = structures.references.internals for i=1,#internals do local entry = internals[i] - local metadata = entry.metadata - if metadata.kind == "full" then - local userdata = entry.userdata - if userdata then - local set = userdata.btxset - if set then - local tag = userdata.btxref - local s = usedentries[set] - if s then - local u = s[tag] - if u then - u[#u+1] = entry + if entry then + local metadata = entry.metadata + if metadata and metadata.kind == "full" then + local userdata = entry.userdata + if userdata then + local set = userdata.btxset + if set then + local tag = userdata.btxref + local s = usedentries[set] + if s then + local u = s[tag] + if u then + u[#u+1] = entry + else + s[tag] = { entry } + end else - s[tag] = { entry } + usedentries[set] = { [tag] = { entry } } end - else - usedentries[set] = { [tag] = { entry } } end end end + else + -- weird end --- table.save("temp.lua",usedentries) + -- table.save("temp.lua",usedentries) end return usedentries[k] end |