Comment 17 for bug 1111610

Revision history for this message
In , Focht (focht) wrote :

Hello,

the culprit is most likely the mission delta compression API which Wine doesn't provide (living in mspatcha.dll component).

--- snip ---
...
0027:Call KERNEL32.GetSystemDirectoryA(0032f25c,00000104) ret=01003680
0027:Ret KERNEL32.GetSystemDirectoryA() retval=00000013 ret=01003680
0027:Call KERNEL32.LoadLibraryA(0032f464 "C:\\windows\\system32\\mspatcha.dll") ret=010036a5
0027:Ret KERNEL32.LoadLibraryA() retval=00000000 ret=010036a5
0027:Call KERNEL32.GetLastError() ret=0100484e
0027:Ret KERNEL32.GetLastError() retval=0000007e ret=0100484e
...
--- snip ---

Although the installer goes further from this point (error message displayed very late stage) I suspect this part to be the problem because the installer unpacks lots of delta patch type like files.

If you own Windows you could try to use native "mspatcha.dll" and see if it works around the problem (place it into system32).
If the error message is prevented by using native please do the following:

1.) Make sure you operate on clean WINEPREFIX
2.) Run the following command:

--- snip ---
WINEDEBUG=+tid,+seh,+snoop wine foo.exe >log.txt 2>&1
--- snip ---

3.) attach the log file to the bug.

That will at least tell us what API need to be stubbed/implemented first.

Useful information about the "Delta Compression Application Programming Interface" can be found here:

http://msdn.microsoft.com/en-us/library/ms811406.aspx

Regards