Range fix

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@8349 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Richard Frith-MacDonald 2000-12-18 17:14:54 +00:00
parent e514763173
commit 9835ced269
2 changed files with 23 additions and 6 deletions

View file

@ -1,8 +1,14 @@
2000-11-18 Richard Frith-Macdonald <rfm@gnu.org>
* Source/GSTextStorage.m: ([-setAttributes:range:]) fix for the case
where we set the same attributes in a range as already exist in
a range that overlaps the start of the one we give.
2000-12-17 Georg Fleischmann
* gui/Source/NSView.m ([NSView -setFrameSize:]):
* Source/NSView.m ([NSView -setFrameSize:]):
scale bounds, if necessary
* gui/Source/NSView.m ([NSView -scaleUnitSquareSize:]):
* Source/NSView.m ([NSView -scaleUnitSquareSize:]):
scale from bounds instead of frame (like OpenStep)
Sun Dec 17 14:32:11 2000 Nicola Pero <n.pero@mi.flashnet.it>

View file

@ -619,12 +619,23 @@ SANITY();
* otherwise, add a new slot and use that.
*/
info = OBJECTAT(arrayIndex);
if (info->loc >= beginRangeLoc || info->attrs == attributes)
if (info->loc >= beginRangeLoc)
{
info->loc = beginRangeLoc;
unCacheAttributes(info->attrs);
RELEASE(info->attrs);
info->attrs = attributes;
if (info->attrs == attributes)
{
unCacheAttributes(attributes);
}
else
{
unCacheAttributes(info->attrs);
RELEASE(info->attrs);
info->attrs = attributes;
}
}
else if (info->attrs == attributes)
{
unCacheAttributes(attributes);
}
else
{