@@ -83,8 +83,8 @@ def render(
83
83
84
84
for i , token in enumerate (tokens ):
85
85
if token .type == "inline" :
86
- assert token .children is not None
87
- result += self .renderInline (token .children , options , env )
86
+ if token .children :
87
+ result += self .renderInline (token .children , options , env )
88
88
elif token .type in self .rules :
89
89
result += self .rules [token .type ](tokens , i , options , env )
90
90
else :
@@ -206,8 +206,8 @@ def renderInlineAsText(
206
206
if token .type == "text" :
207
207
result += token .content
208
208
elif token .type == "image" :
209
- assert token .children is not None
210
- result += self .renderInlineAsText (token .children , options , env )
209
+ if token .children :
210
+ result += self .renderInlineAsText (token .children , options , env )
211
211
elif token .type == "softbreak" :
212
212
result += "\n "
213
213
@@ -305,14 +305,10 @@ def image(
305
305
306
306
# "alt" attr MUST be set, even if empty. Because it's mandatory and
307
307
# should be placed on proper position for tests.
308
-
309
- assert (
310
- token .attrs and "alt" in token .attrs
311
- ), '"image" token\' s attrs must contain `alt`'
312
-
313
- # Replace content with actual value
314
-
315
- token .attrSet ("alt" , self .renderInlineAsText (token .children , options , env ))
308
+ if token .children :
309
+ token .attrSet ("alt" , self .renderInlineAsText (token .children , options , env ))
310
+ else :
311
+ token .attrSet ("alt" , "" )
316
312
317
313
return self .renderToken (tokens , idx , options , env )
318
314
0 commit comments