diff options
-rw-r--r-- | Source/SPNarrowDownCompletion.m | 1 | ||||
-rw-r--r-- | Source/SPTablesList.m | 9 |
2 files changed, 9 insertions, 1 deletions
diff --git a/Source/SPNarrowDownCompletion.m b/Source/SPNarrowDownCompletion.m index 81f4e28b..f86c66c5 100644 --- a/Source/SPNarrowDownCompletion.m +++ b/Source/SPNarrowDownCompletion.m @@ -953,6 +953,7 @@ NSString* toInsert = [curMatch substringFromIndex:[originalFilterString length]]; theCharRange.length += [toInsert length] - currentAutocompleteLength; theParseRange.length += [toInsert length]; + [theView breakUndoCoalescing]; [theView insertText:[toInsert lowercaseString]]; autocompletePlaceholderWasInserted = YES; diff --git a/Source/SPTablesList.m b/Source/SPTablesList.m index bbc40164..54e0f400 100644 --- a/Source/SPTablesList.m +++ b/Source/SPTablesList.m @@ -106,7 +106,14 @@ } else { for ( i = 0 ; i < [theResult numOfRows] ; i++ ) { resultRow = [theResult fetchRowAsArray]; - NSString *tableName = [NSString stringWithUTF8String:[[resultRow objectAtIndex:0] cStringUsingEncoding:[mySQLConnection stringEncoding]]]; + // Due to encoding problems it can be the case that [resultRow objectAtIndex:0] + // return NSNull, thus catch that case for safety reasons + NSString *row = [resultRow objectAtIndex:0]; + NSString *tableName; + if([row isKindOfClass:[NSString class]]) + tableName = [NSString stringWithUTF8String:[row cStringUsingEncoding:[mySQLConnection stringEncoding]]]; + else + tableName = @"..."; [tables addObject:tableName]; if ([[resultRow objectAtIndex:1] isEqualToString:@"VIEW"]) { [tableTypes addObject:[NSNumber numberWithInteger:SPTableTypeView]]; |