summaryrefslogtreecommitdiff
path: root/usr.bin/ctags
diff options
context:
space:
mode:
authorRalf S. Engelschall <rse@FreeBSD.org>2007-02-04 20:04:29 +0000
committerRalf S. Engelschall <rse@FreeBSD.org>2007-02-04 20:04:29 +0000
commitf61555255428849378a84019c50437a51d31f5f8 (patch)
tree7b838597de9dcf15b4ad3adb5dd9d58f69a8185a /usr.bin/ctags
parent586386f70cfda1510ee05af69320dc682cc85bb4 (diff)
downloadsrc-test-f61555255428849378a84019c50437a51d31f5f8.tar.gz
src-test-f61555255428849378a84019c50437a51d31f5f8.zip
fix bug: avoid dereferencing content of an already free(3)'ed chunk
Notes
Notes: svn path=/head/; revision=166501
Diffstat (limited to 'usr.bin/ctags')
-rw-r--r--usr.bin/ctags/tree.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/usr.bin/ctags/tree.c b/usr.bin/ctags/tree.c
index 6c42f32c79a87..bd65c5a88f3cd 100644
--- a/usr.bin/ctags/tree.c
+++ b/usr.bin/ctags/tree.c
@@ -126,10 +126,12 @@ add_node(NODE *node, NODE *cur_node)
static void
free_tree(NODE *node)
{
+ NODE *node_next;
while (node) {
if (node->right)
free_tree(node->right);
+ node_next = node->left;
free(node);
- node = node->left;
+ node = node_next;
}
}