Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/ccgus/fmdb.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/FMDatabasePool.m7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/FMDatabasePool.m b/src/FMDatabasePool.m
index f515618..b6cc543 100644
--- a/src/FMDatabasePool.m
+++ b/src/FMDatabasePool.m
@@ -100,11 +100,13 @@
- (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 @@
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];
+ }
}
}
}