Memory leak and other fixes from Frith-MacDonald.

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@2775 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
fedor 1998-03-12 14:21:20 +00:00
parent 7285b3e9a6
commit a0993c655f
17 changed files with 11155 additions and 10927 deletions

View file

@ -77,6 +77,49 @@
memcpy( value, &data, objc_sizeof_type([self objCType]) );
}
- (BOOL) isEqual: (id)other
{
if ([other isKindOfClass: [self class]]) {
return [self isEqualToValue: other];
}
return NO;
}
- (BOOL) isEqualToValue: (NSValue*)aValue
{
typedef _dt = data;
if ([aValue isKindOfClass: [self class]]) {
_dt val = [aValue TYPE_METHOD];
#if TYPE_ORDER == 0
return [data isEqual: val];
#elif TYPE_ORDER == 1
if (data.x == val.x && data.y == val.y)
return YES;
else
return NO;
#elif TYPE_ORDER == 2
if (data == val)
return YES;
else
return NO;
#elif TYPE_ORDER == 3
if (data.origin.x == val.origin.x &&
data.origin.y == val.origin.y &&
data.size.width == val.size.width &&
data.size.height == val.size.height)
return YES;
else
return NO;
#elif TYPE_ORDER == 4
if (data.width == val.width && data.height == val.height)
return YES;
else
return NO;
#endif
}
return NO;
}
- (const char *)objCType
{
typedef _dt = data;