Bug path

pamark
‘pamark’: events 1-5
29 if (p != (AMARK *)NULL) {
^
|
(1) following ‘false’ branch (when ‘p’ is NULL)...
[...]
32 if ((p = (AMARK *)malloc(sizeof(AMARK))) == (AMARK *)NULL)
~ ~~~~~~~~~~~~~~~~~~~~~
| |
| (2) ...to here
| (3) allocated here
(4) assuming ‘p’ is non-NULL
(5) following ‘false’ branch (when ‘p’ is non-NULL)...
‘pamark’: events 6-7
35 p->m_next = (AMARK *)NULL;
^
|
(6) ...to here
[...]
46 return 1;
~
|
(7) ‘p’ leaks here; was allocated at (3)