Hey Loadman
I was working on Engine18 today, finally got some time to upgrade to the latest Mala 1.7.1.0.
Anyway, my addin started crashing where it never had before.
When I finally traced it down, it +looks+ like the signature for MaLaOrientationSwitch has changed.
The Docs (i just downloaded the latest SDK) all describe it as:
Delphi: procedure MaLaOrientationSwitch(orientation: Integer); cdecl;
C++: extern "C" DLL void MaLaOrientationSwitch(int orientation)
And that's the way I had my function exported, but it crashes on me, like so
2010/10/23 16:31:49.91 Info: PLUGIN: Engine18 _OnMaLaListSelected event invoking
2010/10/23 16:31:49.91 Info: PLUGIN: Engine18 _OnMaLaListSelected event invoked
2010/10/23 16:31:49.92 Info: Current Memory used: 39,936 K
2010/10/23 16:31:49.92 Info: SetLayout: No18Arqadium
2010/10/23 16:31:49.92 Info: Loading layout: C:\Games\FrontEnds\Mala\Layouts\No18Arqadium.mll
2010/10/23 16:31:50.26 Debug **: PlugIn Message: Switching to 0
2010/10/23 16:31:50.27 Info: PLUGIN: Engine18 Called ORIENTATIONSWITCH
2010/10/23 16:31:50.27 Error: Exception Message: List index out of bounds (2), Object Function: ChangeDesktopResultion, Exception Class: EListError, Object Class: TfrmMain
2010/10/23 16:31:52.04 Info: Showing taskbar
2010/10/23 16:31:52.06 Debug **: ShowMouse:
2010/10/23 16:31:52.06 Error: AppException: Terminating MaLa
I figured I have to be trashing the stack somehow, just wasn't sure how.
After playing with it awhile I discovered that if I remove the ORIENTATION argument from the export, Mala (and my addins) work just fine.
I just wanted to run this by you and see if it rings any bells. I could be just missing something on my side, but I've checked and double checked, and it appears that the arg got dropped.
I noticed that LEDBlinky didn't crash, so I investigated further and it turns out it's not exposing that entrypoint, so it wouldn't have any problems.
Engine18, on the other hand, exposes EVERY entry point (so I'll really be giving Mala a good workout!

)
Any ideas?