fix for overrun when searching backwards (spotted by Fred using valgrind)

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@36204 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Richard Frith-MacDonald 2013-02-28 12:51:27 +00:00
parent 76255723f0
commit 75661de25e
4 changed files with 36 additions and 6 deletions

View file

@ -341,16 +341,31 @@ int main()
NSCaseInsensitiveSearch | NSBackwardsSearch,
NSMakeRange(0,9), NSMakeRange(8,1));
strRangeFromSet("boaboaboa",
[NSCharacterSet alphanumericCharacterSet],
NSCaseInsensitiveSearch | NSBackwardsSearch,
NSMakeRange(2,6), NSMakeRange(7,1));
strRangeFromSet("boaboaboa",
[NSCharacterSet whitespaceCharacterSet],
NSCaseInsensitiveSearch | NSBackwardsSearch,
NSMakeRange(0,9), NSMakeRange(NSNotFound,0));
strRangeFromSet("boaboaboa",
[NSCharacterSet whitespaceCharacterSet],
NSCaseInsensitiveSearch | NSBackwardsSearch,
NSMakeRange(2,6), NSMakeRange(NSNotFound,0));
strRangeFromSet("bo boaboa",
[NSCharacterSet whitespaceCharacterSet],
NSCaseInsensitiveSearch | NSBackwardsSearch,
NSMakeRange(0,9), NSMakeRange(2,1));
strRangeFromSet("bo boaboa",
[NSCharacterSet whitespaceCharacterSet],
NSCaseInsensitiveSearch | NSBackwardsSearch,
NSMakeRange(2,6), NSMakeRange(2,1));
testLineRange("This is a line of text\n", NSMakeRange(10, 10), NSMakeRange(0, 23));
testLineRange("This is a line of text\r\n", NSMakeRange(10, 10), NSMakeRange(0, 24));
testLineRange("This is a line of text\r\r", NSMakeRange(10, 10), NSMakeRange(0, 23));