diff --git a/AppKit/CPTableView.j b/AppKit/CPTableView.j index d7b85eda1..e03b78802 100644 --- a/AppKit/CPTableView.j +++ b/AppKit/CPTableView.j @@ -2026,11 +2026,12 @@ NOT YET IMPLEMENTED return -1; var cellView = aView, - contentView = [[self window] contentView]; + contentView = [[self window] contentView], + max_rec = 100; - while (1) + while (max_rec--) { - if (cellView == contentView) + if (!cellView || cellView === contentView) { return -1; } @@ -5093,6 +5094,13 @@ Your delegate can implement this method to avoid subclassing the tableview to ad { var responder = [[self window] firstResponder]; + if (![responder isKindOfClass:[CPView class]] || ![responder isDescendantOf:self]) + { + _editingRow = CPNotFound; + _editingColumn = CPNotFound; + return; + } + _editingRow = [self rowForView:responder]; _editingColumn = [self columnForView:responder];