Я думаю, что проблема в этой строке:
elements = [xpathParser search:@"//div[starts-with(@id,'content_div')]//a"];
Я полагаю, что метод - search
возвращает объект автоматического освобождения, поэтому ваш объект elements
получает сообщение об освобождении после возврата метода viewDidLoad
и, следовательно, освобождается.
Вы можете исправить это двумя способами:
добавить retain
вызов, например
elements = [[xpathParser search:@"//div[starts-with(@id,'content_div')]//a"] retain];
используйте свойства, подобные этому
self.elements = [xpathParser search:@"//div[starts-with(@id,'content_div')]//a"];