oc: cached usercontext updates indexing_context

Instead of use always the one given on initialization
This commit is contained in:
Jesús García Sáez
2014-08-22 17:05:49 +02:00
committed by Julio García
parent 52ad0e0e5b
commit a7c2054cce
4 changed files with 21 additions and 1 deletions
+13 -1
View File
@@ -65,7 +65,14 @@ static NSMapTable *contextsTable = nil;
id userContext;
userContext = [contextsTable objectForKey: username];
if (!userContext)
if (userContext)
{
// The indexing_context used when this user context was created
// could had been freed, so we have to update it and use the one
// that we receive as parameter (which is a valid one for sure).
[userContext updateIndexing: indexing];
}
else
{
userContext = [[self alloc] initWithUsername: username
andTDBIndexing: indexing];
@@ -76,6 +83,11 @@ static NSMapTable *contextsTable = nil;
return userContext;
}
- (void) updateIndexing: (struct indexing_context *) indexing
{
[mapping updateIndexing: indexing];
}
- (id) init
{
if ((self = [super init]))