diff options
author | Hans Hagen <pragma@wxs.nl> | 2018-07-13 10:51:35 +0200 |
---|---|---|
committer | Context Git Mirror Bot <phg42.2a@gmail.com> | 2018-07-13 10:51:35 +0200 |
commit | a8f63ee70a866cce43ee4b1bb5ba95ef8044243f (patch) | |
tree | 713c9d172e5e441ae131d6902d9e27f4cd9e89c8 /tex/context/base/mkiv/publ-dat.lua | |
parent | ff693671b6540fa81d2ad7aecdbe786a4df97335 (diff) | |
download | context-a8f63ee70a866cce43ee4b1bb5ba95ef8044243f.tar.gz |
2018-07-13 09:55:00
Diffstat (limited to 'tex/context/base/mkiv/publ-dat.lua')
-rw-r--r-- | tex/context/base/mkiv/publ-dat.lua | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/tex/context/base/mkiv/publ-dat.lua b/tex/context/base/mkiv/publ-dat.lua index bf134a56e..b82a3c4f8 100644 --- a/tex/context/base/mkiv/publ-dat.lua +++ b/tex/context/base/mkiv/publ-dat.lua @@ -533,12 +533,16 @@ do value = lpegmatch(filter_2,value,1,dataset.commands) -- we need to start at 1 for { } end if normalized == "crossref" then - local parent = luadata[value] - if parent then - setmetatableindex(entries,parent) - else - -- warning - end + setmetatableindex(entries,function(t,k) + local parent = luadata[value] + if parent then + setmetatableindex(entries,parent) + return entries[k] + else + report_duplicates("no valid parent %a for %a in dataset %s",value,hashtag,dataset.name) + setmetatableindex(entries,nil) + end + end) end entries[normalized] = value end |