|
|
@@ -100,11 +100,13 @@ - (void)pushDatabaseBackInPool:(FMDatabase*)db {
|
|
|
- (FMDatabase*)db {
|
|
|
|
|
|
__block FMDatabase *db;
|
|
|
- __block BOOL shouldNotifyDelegate = NO;
|
|
|
+
|
|
|
|
|
|
[self executeLocked:^() {
|
|
|
db = [_databaseInPool lastObject];
|
|
|
|
|
|
+ BOOL shouldNotifyDelegate = NO;
|
|
|
+
|
|
|
if (db) {
|
|
|
[_databaseOutPool addObject:db];
|
|
|
[_databaseInPool removeLastObject];
|
|
|
@@ -139,8 +141,9 @@ - (FMDatabase*)db {
|
|
|
if (![_databaseOutPool containsObject:db]) {
|
|
|
[_databaseOutPool addObject:db];
|
|
|
|
|
|
- if ([_delegate respondsToSelector:@selector(databasePool:didAddDatabase:)] && shouldNotifyDelegate)
|
|
|
+ if (shouldNotifyDelegate && [_delegate respondsToSelector:@selector(databasePool:didAddDatabase:)]) {
|
|
|
[_delegate databasePool:self didAddDatabase:db];
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
}
|