Fix for case when adding a range entirely withn an existing range

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@24053 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
rfm 2006-11-08 18:16:11 +00:00
parent db244b80bd
commit 4ceae56b24
2 changed files with 15 additions and 3 deletions

View file

@ -673,9 +673,16 @@ static unsigned posForIndex(GSIArray array, unsigned index)
{
break;
}
r.length += (NSMaxRange(aRange) - NSMaxRange(r));
GSIArrayRemoveItemAtIndex(_array, pos--);
GSIArraySetItemAtIndex(_array, (GSIArrayItem)r, pos);
if (NSMaxRange(r) >= NSMaxRange(aRange))
{
GSIArrayRemoveItemAtIndex(_array, pos--);
}
else
{
r.length += (NSMaxRange(aRange) - NSMaxRange(r));
GSIArrayRemoveItemAtIndex(_array, pos--);
GSIArraySetItemAtIndex(_array, (GSIArrayItem)r, pos);
}
}
/*