Author: rfm
Date: Fri Mar 25 12:42:23 2016
New Revision: 39609
URL: http://svn.gna.org/viewcvs/gnustep?rev=39609&view=rev
Log:
Check for corrupt archive or unsupported number types as suggested by Fred
Modified:
libs/base/trunk/Source/NSNumber.m
Modified: libs/base/trunk/Source/NSNumber.m
URL:
http://svn.gna.org/viewcvs/gnustep/libs/base/trunk/Source/NSNumber.m?rev=39609&r1=39608&r2=39609&view=diff
==============================================================================
--- libs/base/trunk/Source/NSNumber.m (original)
+++ libs/base/trunk/Source/NSNumber.m Fri Mar 25 12:42:23 2016
@@ -1033,7 +1033,7 @@
double doublebuf;
void *buffer;
- [coder encodeValueOfObjCType: @encode (char) at: type];
+ [coder encodeValueOfObjCType: @encode(char) at: type];
switch (type[0])
{
@@ -1056,6 +1056,9 @@
buffer = &floatbuf; break;
case 'd':
buffer = &doublebuf; break;
+ default:
+ [NSException raise: NSInternalInconsistencyException
+ format: @"unknown NSNumber type '%s'", type];
}
[self getValue: buffer];
@@ -1080,7 +1083,7 @@
double doublebuf;
void *buffer;
- [coder decodeValueOfObjCType: @encode (char) at: type];
+ [coder decodeValueOfObjCType: @encode(char) at: type];
switch (type[0])
{
case 'c':
@@ -1102,7 +1105,10 @@
buffer = &floatbuf; break;
case 'd':
buffer = &doublebuf; break;
- }
+ default:
+ [NSException raise: NSInternalInconsistencyException
+ format: @"unknown NSNumber type '%c'", type[0]];
+ }
[coder decodeValueOfObjCType: type at: buffer];
return [self initWithBytes: buffer objCType: type];
}
_______________________________________________
Gnustep-cvs mailing list
[email protected]
https://mail.gna.org/listinfo/gnustep-cvs