comparison mac/dw.m @ 713:2c8fc0fd8c11

Don't send tree events with no selected item. Also don't strdup a NULL string.
author bsmith@81767d24-ef19-dc11-ae90-00e081727c95
date Sat, 12 Mar 2011 14:56:44 +0000
parents 01107d8e033e
children cf6246f86c04
comparison
equal deleted inserted replaced
712:01107d8e033e 713:2c8fc0fd8c11
256 user = [item pointerAtIndex:3]; 256 user = [item pointerAtIndex:3];
257 if(user) 257 if(user)
258 { 258 {
259 text = strdup([nstr UTF8String]); 259 text = strdup([nstr UTF8String]);
260 } 260 }
261 else
262 {
263 text = NULL;
264 }
261 int result = treeselectfunc(handler->window, item, text, handler->data, user); 265 int result = treeselectfunc(handler->window, item, text, handler->data, user);
262 free(text); 266 free(text);
263 return result; 267 return result;
264 } 268 }
265 269
1175 -(void)treeSelectionChanged:(id)sender 1179 -(void)treeSelectionChanged:(id)sender
1176 { 1180 {
1177 /* Handler for tree class */ 1181 /* Handler for tree class */
1178 id item = [self itemAtRow:[self selectedRow]]; 1182 id item = [self itemAtRow:[self selectedRow]];
1179 1183
1180 _event_handler(self, (void *)item, 12); 1184 if(item)
1185 {
1186 _event_handler(self, (void *)item, 12);
1187 }
1181 } 1188 }
1182 -(NSMenu *)menuForEvent:(NSEvent *)event 1189 -(NSMenu *)menuForEvent:(NSEvent *)event
1183 { 1190 {
1184 int row; 1191 int row;
1185 NSPoint where = [self convertPoint:[event locationInWindow] fromView:nil]; 1192 NSPoint where = [self convertPoint:[event locationInWindow] fromView:nil];