https://bugs.winehq.org/show_bug.cgi?id=34989
--- Comment #15 from Sebastian Lackner sebastian@fds-team.de --- The information on the following website http://www.installsite.org/pages/en/isnews/200108/ seems to confirm my theory:
"""While the installer builds the script, only immediate execution custom actions are actually executed. All other actions (standard actions like InstallFiles and deferred execution custom actions) are only noted in the script."""
"""All the script execution takes place "inside" the InstallFinalize action."""
By the way ... Rollback execution is also implemented completely wrong:
"""While the installer executes the installation script, it builds a rollback script. For any standard action in the installation script, a rollback command is added to the rollback script. The installer cannot automatically undo changes that custom actions make to the target system. Instead it adds any rollback custom actions to the rollback script."""
With the current method (build the rollback script directly in phase 1) this obviously can't work correctly. The rollback script has to be generated while processing the install script, to make sure only failed parts are actually rolled back and not everything. Wondering a bit why the current implementation works at all ;)