diff -ur unison-2.27.57/uimacnew/ReconItem.m unison-2.27.57./uimacnew/ReconItem.m
--- unison-2.27.57/uimacnew/ReconItem.m	2007-10-04 06:53:48.000000000 +0400
+++ unison-2.27.57./uimacnew/ReconItem.m	2008-04-13 07:08:54.000000000 +0400
@@ -638,10 +638,10 @@
 
 - (void)addChild:(ReconItem *)item pathArray:(NSArray *)pathArray level:(int)level
 {
-	NSString *element = [pathArray objectAtIndex:level];
+	NSString *element = [pathArray count] ? [pathArray objectAtIndex:level] : @"";
 
 	// if we're at the leaf of the path, then add the item
-	if (level == [pathArray count]-1) {
+	if (((0 == [pathArray count]) && (0 == level)) || (level == [pathArray count]-1)) {
 		[item setParent:self];
 		[item setPath:element];
 		[_children addObject:item];
