Skip to content

Commit af56522

Browse files
authored
Merge pull request #79 from huaxinliao/Double_free
Fix double free error
2 parents a90b142 + 232542c commit af56522

File tree

2 files changed

+0
-6
lines changed

2 files changed

+0
-6
lines changed

include/twin_private.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -472,7 +472,6 @@ void _twin_path_sfinish(twin_path_t *path);
472472
typedef struct _twin_queue {
473473
struct _twin_queue *next;
474474
struct _twin_queue *order;
475-
bool walking;
476475
bool deleted;
477476
} twin_queue_t;
478477

src/queue.c

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@ void _twin_queue_insert(twin_queue_t **head,
1919
break;
2020
new->next = *prev;
2121
new->order = 0;
22-
new->walking = false;
2322
new->deleted = false;
2423
*prev = new;
2524
}
@@ -54,8 +53,6 @@ void _twin_queue_delete(twin_queue_t **head, twin_queue_t *old)
5453
{
5554
_twin_queue_remove(head, old);
5655
old->deleted = true;
57-
if (!old->walking)
58-
free(old);
5956
}
6057

6158
twin_queue_t *_twin_queue_set_order(twin_queue_t **head)
@@ -64,7 +61,6 @@ twin_queue_t *_twin_queue_set_order(twin_queue_t **head)
6461

6562
for (twin_queue_t *q = first; q; q = q->next) {
6663
q->order = q->next;
67-
q->walking = true;
6864
}
6965
return first;
7066
}
@@ -76,7 +72,6 @@ void _twin_queue_review_order(twin_queue_t *first)
7672
for (q = first; q; q = o) {
7773
o = q->order;
7874
q->order = 0;
79-
q->walking = false;
8075
if (q->deleted)
8176
free(q);
8277
}

0 commit comments

Comments
 (0)