mirror of
https://github.com/gnustep/libs-base.git
synced 2025-04-22 16:33:29 +00:00
Tolerate nil cwrelease methods for content
This commit is contained in:
parent
4ad8d6ba38
commit
a08d7f8b0f
1 changed files with 18 additions and 12 deletions
|
@ -649,12 +649,15 @@ static Class GSInlineArrayClass;
|
|||
id o = _contents_array[pos];
|
||||
Class c = object_getClass(o);
|
||||
|
||||
if (c != last)
|
||||
{
|
||||
last = c;
|
||||
rel = [o methodForSelector: @selector(release)];
|
||||
}
|
||||
(*rel)(o, @selector(release));
|
||||
if (c)
|
||||
{
|
||||
if (c != last)
|
||||
{
|
||||
last = c;
|
||||
rel = [o methodForSelector: @selector(release)];
|
||||
}
|
||||
(*rel)(o, @selector(release));
|
||||
}
|
||||
_contents_array[pos] = nil;
|
||||
}
|
||||
_version++;
|
||||
|
@ -796,12 +799,15 @@ static Class GSInlineArrayClass;
|
|||
id o = _contents_array[end];
|
||||
Class c = object_getClass(o);
|
||||
|
||||
if (c != last)
|
||||
{
|
||||
last = c;
|
||||
rel = [o methodForSelector: @selector(release)];
|
||||
}
|
||||
(*rel)(o, @selector(release));
|
||||
if (c)
|
||||
{
|
||||
if (c != last)
|
||||
{
|
||||
last = c;
|
||||
rel = [o methodForSelector: @selector(release)];
|
||||
}
|
||||
(*rel)(o, @selector(release));
|
||||
}
|
||||
_contents_array[end] = nil;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue