([NSString -substringFromRange:]): Raise correct exceptions.

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1666 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Andrew McCallum 1996-09-02 13:43:45 +00:00
parent f7d7053b71
commit 0412ab7dce

View file

@ -484,8 +484,13 @@ handle_printf_atsign (FILE *stream,
- (NSString*) substringFromRange: (NSRange)aRange
{
unichar buffer[aRange.length];
[self getCharacters:buffer range:aRange];
return [[self class] stringWithCharacters:buffer length:aRange.length];
if (aRange.location > _count)
[NSException raise: NSRangeException format: @"Invalid location."];
if (aRange.length > (_count - aRange.location))
[NSException raise: NSRangeException format: @"Invalid location+length."];
[self getCharacters: buffer range: aRange];
return [[self class] stringWithCharacters: buffer length: aRange.length];
}
- (NSString*) substringToIndex: (unsigned int)index