https://bugs.winehq.org/show_bug.cgi?id=34989
--- Comment #13 from Sebastian Lackner sebastian@fds-team.de --- Created attachment 51560 --> https://bugs.winehq.org/attachment.cgi?id=51560 msi: Always defer execution of custom actions.
(In reply to Erich E. Hoover from comment #8)
At least with the installer http://whollygenes.swmirror.com/tmg9setup.exe (from Bug #35589) telling Wine to defer that particular action is not sufficient to fix the problem. It appears that it needs to be deferred, but must still occur prior to the install step: === err:msi:ready_media cabinet not found: L"C:\users\Public\Application Data\The Master Genealogist v9 Installer\disk1.cab" err:msi:ACTION_InstallFiles Failed to ready media for L"fow.app" ===
There are indeed multiple problems.
The problem described in this bug report is "easy" to resolve. As analyzed by Anastasius, the deferred action should not be executed immediately. I'm attaching a patch here which fixes this issue.
The second problem is more difficult. My theory is that Wine executes the InstallFiles action (and probably a lot more actions) in the wrong phase. MSDN and various other pages mention, that the immediate phase should not modify the system, but Wine tries to copy files immediately. In order to fix this properly various actions which currently happen in phase 1 have to be moved to phase 2, the risk of breaking things by such a change is very big. I'm attaching a quick & dirty hack here which is at least sufficient for the SourceTree application.