Skip to content

Commit caeaa06

Browse files
committed
Fix UUID comparison in ImageTable to be case-insensitive.
If the user's image entity returns UUID with lowercase string this comparison will fail even if the UUID matches (since FIC UUID tends to be uppercase) leading to the entry keep getting deleted and no image being returned to the user or cached..
1 parent f8ba631 commit caeaa06

1 file changed

Lines changed: 2 additions & 2 deletions

File tree

FastImageCache/FICImageTable.m

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -347,8 +347,8 @@ - (UIImage *)newImageForEntityUUID:(NSString *)entityUUID sourceImageUUID:(NSStr
347347
if (entryData != nil) {
348348
NSString *entryEntityUUID = FICStringWithUUIDBytes([entryData entityUUIDBytes]);
349349
NSString *entrySourceImageUUID = FICStringWithUUIDBytes([entryData sourceImageUUIDBytes]);
350-
BOOL entityUUIDIsCorrect = entityUUID == nil || [entityUUID isEqualToString:entryEntityUUID];
351-
BOOL sourceImageUUIDIsCorrect = sourceImageUUID == nil || [sourceImageUUID isEqualToString:entrySourceImageUUID];
350+
BOOL entityUUIDIsCorrect = entityUUID == nil || [entityUUID caseInsensitiveCompare:entryEntityUUID] == NSOrderedSame;
351+
BOOL sourceImageUUIDIsCorrect = sourceImageUUID == nil || [sourceImageUUID caseInsensitiveCompare:entrySourceImageUUID] == NSOrderedSame;
352352

353353
NSNumber *indexNumber = [self _numberForEntryAtIndex:[entryData index]];
354354
@synchronized(indexNumber) {

0 commit comments

Comments
 (0)