diff options
Diffstat (limited to 'Frameworks/MCPKit/MCPFoundationKit/MCPConnection.m')
-rw-r--r-- | Frameworks/MCPKit/MCPFoundationKit/MCPConnection.m | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/Frameworks/MCPKit/MCPFoundationKit/MCPConnection.m b/Frameworks/MCPKit/MCPFoundationKit/MCPConnection.m index e2a2930f..7b6fa0b8 100644 --- a/Frameworks/MCPKit/MCPFoundationKit/MCPConnection.m +++ b/Frameworks/MCPKit/MCPFoundationKit/MCPConnection.m @@ -1834,7 +1834,7 @@ void performThreadedKeepAlive(void *ptr) * Updates the dict containing the structure of all available databases (mainly for completion/navigator) * executed on a new connection. */ -- (void)queryDbStructureAndForceUpdate:(NSNumber*)forceUpdate +- (void)queryDbStructureWithUserInfo:(NSDictionary*)userInfo { NSAutoreleasePool *queryPool = [[NSAutoreleasePool alloc] init]; @@ -1842,6 +1842,8 @@ void performThreadedKeepAlive(void *ptr) NSString *SPUniqueSchemaDelimiter = @""; + + NSString *connectionID; if([delegate respondsToSelector:@selector(connectionID)]) connectionID = [NSString stringWithString:[[self delegate] connectionID]]; @@ -1858,9 +1860,8 @@ void performThreadedKeepAlive(void *ptr) [[[self delegate] allDatabaseNames] componentsJoinedByString:SPUniqueSchemaDelimiter]] componentsSeparatedByString:SPUniqueSchemaDelimiter]; for(id db in dbs) { - NSString *db_id = [NSString stringWithFormat:@"%@%@%@", connectionID, SPUniqueSchemaDelimiter, db]; - if(![[structure valueForKey:connectionID] valueForKey:db_id]) { - [[structure valueForKey:connectionID] setObject:db forKey:db_id]; + if(![[self delegate] navigatorSchemaPathExistsForDatabase:db]) { + [[structure valueForKey:connectionID] setObject:db forKey:[NSString stringWithFormat:@"%@%@%@", connectionID, SPUniqueSchemaDelimiter, db]]; } } @@ -1907,7 +1908,7 @@ void performThreadedKeepAlive(void *ptr) } } - if(forceUpdate == nil) { + if(userInfo == nil || ![userInfo objectForKey:@"forceUpdate"]) { if([[self delegate] navigatorSchemaPathExistsForDatabase:currentDatabase]) { if(removeFlag) [[NSNotificationCenter defaultCenter] postNotificationName:@"SPDBStructureWasUpdated" object:delegate]; |