Roobiq/RBQFetchedResultsController

Delegate never released

stephenkopylov opened this issue · 7 comments

Hi everyone and thank you for this library!

But, after a day of research I found really sad bug:

If we do any database modifications after "performFetch" - delegate will be retained somewhere and won't be released.

It brings a lot of pain and makes the library unusable =(

I have slightly edited sample project to make this bug more obviously:
http://rgho.st/8b9RLZN6L

Have a look on "viewDidLoad" in "ExampleTableViewController" and try to comment and uncomment calling of "writeObjects" before and after "performFetch". Then press back and you will see that "ExampleTableViewController" will never released.

Sorry about this! I thought I had resolved any retain cycles. I will check out the sample app and hopefully resolve.

Hi, Adam!
Did you check it?

I'd really like to use this library also, but a retain cycle in the delegate makes this unusable. Hope to see this resolved soon!

0xced commented

I think I have observed the same issue in ABFRealmTableViewController. Here’s the workaround I am using: 0xced/ABFRealmTableViewController@093d6ed

I still haven’t figured out the retain cycle though. 🙁

0xced commented

Oh, apparently this issue is already being investigated in #102.

@0xced your hot fix is help me. Need to call unregisterChangeNotifications. But really lib have problem with delegate,self.notificationRunLoop and autorelease pool. Library still retain delegate.

Any news?