Friday, October 3, 2025

SpamSieve 3.2.1

SpamSieve 3.2.1 is a maintenance release of my Mac e-mail spam filter.

Previously:

2 Comments RSS · Twitter · Mastodon


The issue with callStackSymbols is Swift, as it converts to strings at the ObjC->Swift berrier. Instead, take the addresses (the other Array API), and translate on demand. I have a better replacement, that demangles C++ and Swift symbols:
https://github.com/LeoNatan/LNObjectiveCHelpers/blob/master/LNAddressInfo.mm

There is also a private API to initialize the special NSArray subclass with the addresses when you really need them.


@Léo I’m aware of the eager bridging, but that has previously not been a problem for me, and it seems like it could be defeated by preventing/delaying the conversion to Array (e.g. casting to NSArray), without having to demangle them yourself. Thanks for you solution, though. I think the main issue is that in rare cases the demangling is super slow. I’m not sure what causes that, though.

Leave a Comment