Вы отпускаете childrensArray
только тогда, когда экземпляр освобожден. Вы также должны освободить переменную экземпляра перед установкой:
- (void)loadChildren {
// Retrieve a array with dictionaries of children from ServiceGetChildren
[childrensArray release];
childrensArray = [serviceGetChildren.childrensArray copy];
}
Лучшим способом было бы фактически использовать вашу собственность:
- (void)loadChildren {
// Retrieve a array with dictionaries of children from ServiceGetChildren
self.childrensArray = [[serviceGetChildren.childrensArray copy] autorelease];
}
(обратите внимание на autorelease
)
Преимущество заключается в том, что вы можете запускать KVO-уведомления, если вы когда-либо их используете.