Open dodikk opened 9 years ago
Generally we could convert the delegates to weak
at some point. iOS 4 compatibility is really not that important anymore
Generally we could convert the delegates to weak at some point.
That would be a lot better. Still, I did not feel confident enough to introduce such major changes since I have not fully understood the instance ownership model of the library. Neither I do now. Meaning, there are
So I've made the changes as conservative and safe as I could.
P.S. Most of UIKit classes still use unsafe_unretained
delegate properties for backward compatibility. UITableView
, for example.
Moreover, it does not matter that much for this library since NSNotificationCenter
is used for interactions with the client's code.
True. You can use NXOAuth2Client on it's own without the NXOAuth2AccountStore and friends (indeed that was how it was first built) and in that case it works with delegates. If you use the higher level API as is appropriate in most use cases it's indeed not very relevant.
I pushed up #204, making the delegates weak.
Since delegates are
__unsafe_unretained
they should be set to nil manually whenever a corresponding object is released. I've addeddealloc
method to all classes where.delegate = self;
statement is used.The users have to do that as well, so this should be mentioned in the README, I guess.
Note : this pull request is based on from https://github.com/nxtbgthng/OAuth2Client/pull/155