Mike McCormack : server: Make sure we don'
t get into an infinite loop freeing inodes.
Alexandre Julliard
julliard at wine.codeweavers.com
Wed Feb 22 10:32:12 CST 2006
Module: wine
Branch: refs/heads/master
Commit: 309a9bf36fa114ad59b61987cf27b4f39faf7125
URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=309a9bf36fa114ad59b61987cf27b4f39faf7125
Author: Mike McCormack <mike at codeweavers.com>
Date: Wed Feb 22 23:11:17 2006 +0900
server: Make sure we don't get into an infinite loop freeing inodes.
---
server/change.c | 6 +++---
1 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/server/change.c b/server/change.c
index e1093d6..923bbce 100644
--- a/server/change.c
+++ b/server/change.c
@@ -492,10 +492,10 @@ static void free_inode( struct inode *in
if (!subtree && !inode->parent)
{
- struct list *head;
- while ( (head = list_head(&inode->children)) )
+ struct inode *tmp, *next;
+ LIST_FOR_EACH_ENTRY_SAFE( tmp, next, &inode->children,
+ struct inode, ch_entry )
{
- struct inode *tmp = LIST_ENTRY( head, struct inode, ch_entry );
assert( tmp != inode );
assert( tmp->parent == inode );
free_inode( tmp );
More information about the wine-cvs
mailing list