From 6f84df52c2efc5a4e13c65c3fb4f23a9d570db9a Mon Sep 17 00:00:00 2001 From: David Chisnall Date: Tue, 29 Jan 2013 18:42:23 +0000 Subject: [PATCH] Add missing retainCount methods for small objects. git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@36034 72102866-910b-0410-8b05-ffd578937521 --- Source/GSString.m | 4 ++++ Source/NSNumber.m | 17 ++++++++++++++++- 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/Source/GSString.m b/Source/GSString.m index 285b21c09..84ef54b52 100644 --- a/Source/GSString.m +++ b/Source/GSString.m @@ -817,6 +817,10 @@ static void logTinyStringCount(void) { return self; } +- (NSUInteger) retainCount +{ + return UINT_MAX; +} - (id) autorelease { diff --git a/Source/NSNumber.m b/Source/NSNumber.m index c6cf50fc6..d5e16193a 100644 --- a/Source/NSNumber.m +++ b/Source/NSNumber.m @@ -402,6 +402,11 @@ static BOOL useSmallFloat; return self; } +- (NSUInteger) retainCount +{ + return UINT_MAX; +} + - (id) autorelease { return self; @@ -510,6 +515,11 @@ load return self; } +- (NSUInteger) retainCount +{ + return UINT_MAX; +} + - (id) autorelease { return self; @@ -561,6 +571,11 @@ load return self; } +- (NSUInteger) retainCount +{ + return UINT_MAX; +} + - (id) autorelease { return self; @@ -804,7 +819,7 @@ if (aValue >= -1 && aValue <= 12)\ (aValue < (INT_MAX>>OBJC_SMALL_OBJECT_SHIFT)) && (aValue > -(INT_MAX>>OBJC_SMALL_OBJECT_SHIFT))) { - return (id)((aValue << OBJC_SMALL_OBJECT_SHIFT) | SMALL_INT_MASK); + return (id)((((NSInteger)aValue) << OBJC_SMALL_OBJECT_SHIFT) | SMALL_INT_MASK); } #endif n = NSAllocateObject (NSIntNumberClass, 0, 0);