Manuel Guesdon wrote:

Hi,

With version 1.59 of NSAutoreleasePool.m, gdl2 'stopped working' (it was working with v 1.55).

in NSAutoreleasePool -dealloc, calling instanceMethodForSelector on a EOFault object make the object de-faulting and produce strange recurse loop until it fill the stack.
Adding
/**
* Returns a pointer to the C function implementing the method used
* to respond to messages with aSelector by instances of the receiving
* class.
* <br />Raises NSInvalidArgumentException if given a null selector.
*/
+ (IMP) instanceMethodForSelector: (SEL)aSelector
{
if (aSelector == 0)
[NSException raise: NSInvalidArgumentException
format: @"%@ null selector given", NSStringFromSelector(_cmd)];
/*
* Since 'self' is an class, get_imp() will get the instance method.
*/
return get_imp((Class)self, aSelector);
}


in EOFault solve the problem.

What do you think ? Any objection to to commit it ?


Wait!!!
/me turns brain back on.
That's not what we want to do. In this cast it works but that's special case...


This is nasty, but I think what we want is the fault to fire or clear and change the class again.

Let me ponder a bit...

Cheers,
David



_______________________________________________
Gnustep-dev mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/gnustep-dev

Reply via email to