http://bugs.winehq.org/show_bug.cgi?id=9925
Summary: Import fixups should be done before any user code is ran Product: Wine Version: CVS/GIT Platform: PC OS/Version: Linux Status: NEW Severity: major Priority: P2 Component: wine-loader AssignedTo: wine-bugs@winehq.org ReportedBy: vitaliy@kievinfo.com
SafeDisc 1.x fails to work on Wine because of this bug.
Here is what happens: 1. SD creates a new process for the game with CREATE_SUSPENDED flag. 2. Injects some code into new process to be executed first 3. Resumes the new process. 4. Injected code is being executed 5. Wine does import fixups and fails because they are already fixedup (by an injected code).
What should happen is Wine should not let injected code to run until final stages of the process setup are finished. In this case it is import fixups.