Am 05.04.2014 um 18:59 schrieb Mathias Bauer <mathias_ba...@gmx.net>:
> Hi Niels > > Am 05.04.14 18:18, schrieb Niels Grewe: >> Hi Mathias, >> >> Am 04.04.2014 um 11:09 schrieb Mathias Bauer <mathias_ba...@gmx.net>: >> >>>> #0 0x00007ffff4522f94 in objc_msgSend_fpret () from >>>> /usr/GNUstep/Local/Library/Libraries/libobjc.so.4.6 >>>> #1 0x00007ffff403c320 in -[GSAvahiNetService >>>> avahiResolver:foundServiceWithName:type:domain:hostName:address:port:txtRecord:ifIndex:protocol:] >>>> (self=0x19a1210, _cmd=0x7ffff44b51b0, >>>> aResolver=0x1ae7c90, name=0x1ea6da0, type=0x1b1e290, domain=0x1c269a0, >>>> hostName=0x195bc20, address=0x1a90b00, port=33024, txtRecord=0x1e95940, >>>> anIfIndex=3, aProtocol=0) >>>> at GSAvahiNetService.m:1509 >> >> I have no idea what could be wrong here. But one thing that strikes me as >> odd is the following: At line 1509, we are calling -[NSRecursiveLock >> unlock], which returns void, so I’m thinking that it shouldn’t really be >> going via objc_msgSend_fpret(), or should it? > > I've got a similar response from Richard Frith-Macdonald, so yes, that's > weird. Probably memory corruption due to premature deallocation. Could be. The method is called as part of a avahi callback and it does release some avahi resource as part of the processing. If that were holding the last reference to the object, it might cause us to be deallocated before the method has finished executing. I currently don’t see how it would (it’s been a while since I wrote that code, but I think usually the Obj-C objects own the avahi pointers, not the other way around), but it might be worth checking out whether commenting out the avahi_service_resolver_free() call makes the crash go away. Obviously, it’s no fix (the object would just leak), but it would give some indication of where to look next. Cheers, Niels _______________________________________________ Gnustep-dev mailing list Gnustep-dev@gnu.org https://lists.gnu.org/mailman/listinfo/gnustep-dev