Skip to content

Commit 1213047

Browse files
committed
More static analyser fixes; version bump to 5.9.7.
1 parent 5f98ccd commit 1213047

File tree

2 files changed

+15
-12
lines changed

2 files changed

+15
-12
lines changed

src/parser.c

Lines changed: 14 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -4353,7 +4353,7 @@ Node* TY_(ParseHTML)( TidyDocImpl *doc, Node *html, GetTokenMode mode, Bool popS
43534353
}
43544354

43554355
/* Find and discard multiple <html> elements. */
4356-
if (node->tag == html->tag && node->type == StartTag)
4356+
if (html && (node->tag == html->tag) && (node->type == StartTag))
43574357
{
43584358
TY_(Report)(doc, html, node, DISCARDING_UNEXPECTED);
43594359
TY_(FreeNode)(doc, node);
@@ -5387,7 +5387,7 @@ Node* TY_(ParseNamespace)( TidyDocImpl* doc, Node *basenode, GetTokenMode mode,
53875387
TY_(FreeNode)(doc, node);
53885388

53895389
node = n;
5390-
parent = node->parent;
5390+
parent = node ? node->parent : NULL;
53915391
}
53925392
else
53935393
{
@@ -5401,7 +5401,7 @@ Node* TY_(ParseNamespace)( TidyDocImpl* doc, Node *basenode, GetTokenMode mode,
54015401
if (node == basenode)
54025402
{
54035403
lexer->istackbase = istackbase;
5404-
assert(basenode->closed == yes);
5404+
assert(basenode && basenode->closed == yes);
54055405
return NULL;
54065406
}
54075407
}
@@ -6301,14 +6301,16 @@ void TY_(InsertNodeAtStart)(Node *element, Node *node)
63016301
void TY_(InsertNodeAtEnd)(Node *element, Node *node)
63026302
{
63036303
node->parent = element;
6304-
node->prev = element->last;
6304+
node->prev = element ? element->last : NULL;
63056305

6306-
if (element->last != NULL)
6306+
if (element && element->last != NULL)
63076307
element->last->next = node;
63086308
else
6309-
element->content = node;
6309+
if (element)
6310+
element->content = node;
63106311

6311-
element->last = node;
6312+
if (element)
6313+
element->last = node;
63126314
}
63136315

63146316

@@ -6319,16 +6321,17 @@ void TY_(InsertNodeBeforeElement)(Node *element, Node *node)
63196321
{
63206322
Node *parent;
63216323

6322-
parent = element->parent;
6324+
parent = element ? element->parent : NULL;
63236325
node->parent = parent;
63246326
node->next = element;
6325-
node->prev = element->prev;
6326-
element->prev = node;
6327+
node->prev = element ? element->prev : NULL;
6328+
if (element)
6329+
element->prev = node;
63276330

63286331
if (node->prev)
63296332
node->prev->next = node;
63306333

6331-
if (parent->content == element)
6334+
if (parent && parent->content == element)
63326335
parent->content = node;
63336336
}
63346337

version.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
1-
5.9.6
1+
5.9.7
22
2021.07.30

0 commit comments

Comments
 (0)