site_archiver@lists.apple.com Delivered-To: darwin-dev@lists.apple.com In message <73491B49-ADEA-4F6E-A7D5-7B0AD31582E2@gmx.net>, Uli Kusterer writes:
Does that mean it's actually safe to do this after all, under these limited circumstances? I originally thought so, as I actually once managed to call a function with too many parameters (it was a horrible mess of typecasts -- don't ask, I was young and needed the experience) and it didn't blow up in my face right away, which kinda surprised me. But I just thought I'd been lucky.
I have no idea. The problem is that there are so very many ways in which it MIGHT fail, depending on exactly what you're passing, and I don't know the ABI. I would consider it almost certainly foolhardy, but it's up to you.
And we want new & old plugins to work on the host app now, while the future host app will only accept new ones. It sounds like this will work after all? Don't worry about portability, because even if a port was planned, it'd require the new callback style *with* the context pointer right away.
In that case, my suggestion is this: Test it. You don't even care about the general case of extra parameters; you care about the SPECIFIC case of this particular extra parameter, and of course, you can check for that. I would suggest, if you wanna be very careful: Embed some assembly around the call to check all the registers before and after to see what happens, just in case of madness. -s _______________________________________________ Do not post admin requests to the list. They will be ignored. Darwin-dev mailing list (Darwin-dev@lists.apple.com) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/darwin-dev/site_archiver%40lists.appl... This email sent to site_archiver@lists.apple.com