diff --git a/Source/GNUmakefile b/Source/GNUmakefile index f54e2f660..b3cc1cf82 100644 --- a/Source/GNUmakefile +++ b/Source/GNUmakefile @@ -100,14 +100,12 @@ preface.m \ mframe.m ifeq ($(findstring openbsd, $(GNUSTEP_TARGET_OS)), openbsd) - GNU_MFILES += thr-pthread.m OBJC_LIBS += -lpthread endif ifneq ($(OBJC_RUNTIME_LIB), gnu) ifneq ($(OBJC_RUNTIME_LIB), gnugc) GNU_MFILES += objc-gnu2next.m - GNU_MFILES += thr-pthread.m endif endif diff --git a/Source/NSCache.m b/Source/NSCache.m index 3a8beb9de..de5d38bad 100644 --- a/Source/NSCache.m +++ b/Source/NSCache.m @@ -154,24 +154,25 @@ - (void) setObject: (id)obj forKey: (id)key cost: (NSUInteger)num { - _GSCachedObject *old = [_objects objectForKey: key]; + _GSCachedObject *oldObject = [_objects objectForKey: key]; + _GSCachedObject *newObject; - if (nil != old) + if (nil != oldObject) { - [self removeObjectForKey: old->key]; + [self removeObjectForKey: oldObject->key]; } [self _evictObjectsToMakeSpaceForObjectWithCost: num]; - _GSCachedObject *new = [_GSCachedObject new]; + newObject = [_GSCachedObject new]; // Retained here, released when obj is dealloc'd - new->object = RETAIN(obj); - new->key = RETAIN(key); - new->cost = num; + newObject->object = RETAIN(obj); + newObject->key = RETAIN(key); + newObject->cost = num; if ([obj conformsToProtocol: @protocol(NSDiscardableContent)]) { - new->isEvictable = YES; - [_accesses addObject: new]; + newObject->isEvictable = YES; + [_accesses addObject: newObject]; } - [_objects setObject: new forKey: key]; + [_objects setObject: newObject forKey: key]; RELEASE(obj); _totalCost += num; }