tableview - seletor não reconhecido didSelectRowAtIndexPath

Eu tenho tido um problema com o meu aplicativo falhando ao selecionar algo no tableView. Isso não é 100% reproduzível, mas acontece com relativa frequência.

O que acontece é dentro da minha classe EventListViewController (uma subclasse de UITableViewController), eu sobrescrevo a função didSelectRowAtIndexPath porque também estou usando uma barra de pesquisa nesta classe, e quero que ela seja selecionada apenas quando você não estiver pesquisando.

O código é assim:

-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    if(!searching)
        [super tableView:tableView didSelectRowAtIndexPath:indexPath];
}

No entanto, quando ele falha, eu quebro a exceção e esta é a mensagem que recebo, na linha que chama a super função:

[EventListViewController tableView:didSelectRowAtIndexPath:]: unrecognized selector sent to instance 0xa648e50

Eu imprimi algumas coisas no depurador e tudo parece bem para mim:

(lldb) po 0xa648e50
(int) $1 = 174362192 <EventListViewController: 0xa648e50>

(lldb) po self
(EventListViewController *) $2 = 0x0a648e50 <EventListViewController: 0xa648e50>

(lldb) po tableView
(UITableView *) $3 = 0x070fd400 <UITableView: 0x70fd400; frame = (0 0; 320 367); clipsToBounds = YES; autoresize = W+H; layer = <CALayer: 0x6e46750>; contentOffset: {-0, -0}>

(lldb) po indexPath
(NSIndexPath *) $4 = 0x06e8caf0 <NSIndexPath 0x6e8caf0> 2 indexes [1, 1]

(O tableView tem 2 seções, e a segunda seção tem 2 entradas)

Alguém tem alguma idéia do que está acontecendo? deixe-me saber se você precisar de mais alguma informação.

Nota: após mais investigação, descobri que isso é 100% reproduzível com as seguintes etapas: 1: carregue o aplicativo e clique em uma das duas entradas. 2: Volte para o controlador tableView 3: toque em ABAIXO das duas entradas, no espaço em branco onde não deveria haver uma célula. O aplicativo travará, mas observe que o indexPath não diz que está tentando selecionar uma célula que está fora dos limites do tableView, apenas que o método tableView didSelectRowAtIndexPath não existe

questionAnswers(1)

yourAnswerToTheQuestion