nixos-render-docs: fix empty inlines

`children` only has to be not-None, not also not-[]. empty table cells
would can produce an empty inline token and cause these checks to fail,
even though the token actually is totally valid.

showed up in
https://github.com/NixOS/nixpkgs/pull/246956#discussion_r1283146120.
This commit is contained in:
pennae
2023-08-03 18:36:34 +02:00
parent 829cbcbcc6
commit 9c0803f84d
2 changed files with 2 additions and 2 deletions

View File

@@ -623,7 +623,7 @@ class HTMLConverter(BaseConverter[ManualHTMLRenderer]):
elif bt.type == 'footnote_ref' and (id := cast(str, bt.attrs.get('id', ''))): elif bt.type == 'footnote_ref' and (id := cast(str, bt.attrs.get('id', ''))):
result.append(XrefTarget(id, "???", None, None, target_file)) result.append(XrefTarget(id, "???", None, None, target_file))
elif bt.type == 'inline': elif bt.type == 'inline':
assert bt.children assert bt.children is not None
result += self._collect_ids(bt.children, target_file, typ, False) result += self._collect_ids(bt.children, target_file, typ, False)
elif id := cast(str, bt.attrs.get('id', '')): elif id := cast(str, bt.attrs.get('id', '')):
# anchors and examples have no titles we could use, but we'll have to put # anchors and examples have no titles we could use, but we'll have to put

View File

@@ -458,7 +458,7 @@ def _footnote_ids(md: markdown_it.MarkdownIt) -> None:
token.attrs['id'] = f'{token.meta["label"]}.__back.{token.meta["subId"]}' token.attrs['id'] = f'{token.meta["label"]}.__back.{token.meta["subId"]}'
token.meta['target'] = token.meta["label"] token.meta['target'] = token.meta["label"]
elif token.type == 'inline': elif token.type == 'inline':
assert token.children assert token.children is not None
generate_ids(token.children) generate_ids(token.children)
def footnote_ids(state: markdown_it.rules_core.StateCore) -> None: def footnote_ids(state: markdown_it.rules_core.StateCore) -> None: