If you check the bottom of the PAL NSI, as you can see after the MessageBox for LauncherCrashCleanup, it goes down to PostExec and Post to run cleanup.
But the manual claims PostExec happens after the program is launched, which won't happen in this particular case. I am guessing the actual PAL behavior is as designed, and the manual just needs to clarify that. It might also be useful to provide a "emergency clean up" flag variable so custom code can check it.
For example, my PostExec implements "smart" WaitForOtherInstances functionality by ONLY waiting for processes matching the full path of the application, thus ignoring a local copy of the application and services/background processes run by it. In this case it's just a useless, extra check, but it would still be nice for clarification in the manual.
Chris or kAlug, can you confirm behavior here and update the manual appropriately?
Sometimes, the impossible can become possible, if you're awesome!
PostExec is a 3.0 feature.
Previously known as kAlug.
Ok. As this is bleeding edge PAL and should not be used for any apps, I've closed this bug. Please only use stable PAL for apps.
Sometimes, the impossible can become possible, if you're awesome!