aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/tsort.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/tsort.c b/src/tsort.c
index 28a7a05f6..19b991bed 100644
--- a/src/tsort.c
+++ b/src/tsort.c
@@ -352,8 +352,10 @@ detect_loop (struct item *k)
if (loop == k)
{
/* Remove relation. */
- (*p)->suc->count--;
- *p = (*p)->next;
+ struct successor *s = *p;
+ s->suc->count--;
+ *p = s->next;
+ IF_LINT (free (s));
break;
}