diff --git a/Foundation/CPKeyedUnarchiver.j b/Foundation/CPKeyedUnarchiver.j index d7c13930b..dd11af696 100644 --- a/Foundation/CPKeyedUnarchiver.j +++ b/Foundation/CPKeyedUnarchiver.j @@ -46,6 +46,8 @@ var _CPKeyedArchiverNullString = "$ var _CPKeyedUnarchiverArrayClass = Nil, _CPKeyedUnarchiverStringClass = Nil, _CPKeyedUnarchiverDictionaryClass = Nil, + _CPKeyedUnarchiverNumberClass = Nil, + _CPKeyedUnarchiverDataClass = Nil, _CPKeyedUnarchiverArchiverValueClass = Nil; /* @@ -117,6 +119,8 @@ var _CPKeyedUnarchiverArrayClass = Ni _CPKeyedUnarchiverArrayClass = [CPArray class]; _CPKeyedUnarchiverStringClass = [CPString class]; _CPKeyedUnarchiverDictionaryClass = [CPDictionary class]; + _CPKeyedUnarchiverNumberClass = [CPNumber class]; + _CPKeyedUnarchiverDataClass = [CPData class]; _CPKeyedUnarchiverArchiverValueClass = [_CPKeyedArchiverValue class]; } @@ -298,7 +302,7 @@ var _CPKeyedUnarchiverArrayClass = Ni if ([object isKindOfClass:_CPKeyedUnarchiverDictionaryClass]) return _CPKeyedUnarchiverDecodeObjectAtIndex(self, [object objectForKey:_CPKeyedArchiverUIDKey]); - else if ([object isKindOfClass:[CPNumber class]] || [object isKindOfClass:[CPData class]]) + else if ([object isKindOfClass:_CPKeyedUnarchiverNumberClass] || [object isKindOfClass:_CPKeyedUnarchiverDataClass]) return object; else if ([object isKindOfClass:_CPKeyedUnarchiverArrayClass])