changeset 1048:70bad8a91370

Fix for dw_tree_item_delete() not working if there are no child nodes on Mac.
author bsmith@81767d24-ef19-dc11-ae90-00e081727c95
date Wed, 01 Jun 2011 09:56:32 +0000
parents 5dbb931bac5a
children b3674ea2909f
files mac/dw.m
diffstat 1 files changed, 13 insertions(+), 16 deletions(-) [+]
line wrap: on
line diff
--- a/mac/dw.m	Sat May 28 10:41:57 2011 +0000
+++ b/mac/dw.m	Wed Jun 01 09:56:32 2011 +0000
@@ -1584,24 +1584,21 @@
             NSPointerArray *pnt = [node objectAtIndex:z];
             NSMutableArray *children = (NSMutableArray *)[pnt pointerAtIndex:3];
 
-            if(children)
+            if(item == pnt)
             {
-                if(item == pnt)
-                {
-                    _free_tree_recurse(children, NULL);
-                    [node removeObjectAtIndex:z];
-                    count = (int)[node count];
-                    z--;
-                }
-                else if(item == NULL)
-                {
-                    NSString *oldstr = [pnt pointerAtIndex:1];
-                    [oldstr release];
-                    _free_tree_recurse(children, item);
-                }
-                else
-                    _free_tree_recurse(children, item);
+                _free_tree_recurse(children, NULL);
+                [node removeObjectAtIndex:z];
+                count = (int)[node count];
+                z--;
             }
+            else if(item == NULL)
+            {
+                NSString *oldstr = [pnt pointerAtIndex:1];
+                [oldstr release];
+                _free_tree_recurse(children, item);
+            }
+            else
+                _free_tree_recurse(children, item);
         }
     }
     if(!item)