Finalizer crasher on OS X

Luke Howard lukeh at padl.com
Fri Sep 24 15:52:30 EDT 2010


On 24/09/2010, at 6:40 PM, Greg Hudson wrote:

> On Fri, 2010-09-24 at 10:03 -0400, Luke Howard wrote:
>> If it's an OS X bug, fine, otherwise I wonder if we can workaround it
>> by having the destructor set did_run = 0.
> 
> Does gssint_mechglue_init also get invoked twice (the second time when
> the mech is loaded)?

It gets called once, but that's because of DELAY_INITIALIZER (i.e. pthread_once() is used rather than a constructor).

Without DELAY_INITIALIZER, unfortunately it doesn't work either! gssint_mechglue_init() is called when the first plugin linked against the mechglue is loaded. But gssint_mechglue_fini() still gets called twice. So this does sound like an OS X bug?

-- Luke



More information about the krbdev mailing list