[Bug 27818] Eurobattle.net installer fails to run (invalid command line parameters passed to child due to user32.wsprintf not handling %I64u format specifier)

wine-bugs at winehq.org wine-bugs at winehq.org
Sun Jul 17 04:52:24 CDT 2011


http://bugs.winehq.org/show_bug.cgi?id=27818

Anastasius Focht <focht at gmx.net> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |focht at gmx.net
          Component|-unknown                    |user32
            Summary|Eurobattle.net installer    |Eurobattle.net installer
                   |not working (failed to      |fails to run (invalid
                   |create output file)         |command line parameters
                   |                            |passed to child due to
                   |                            |user32.wsprintf not
                   |                            |handling %I64u format
                   |                            |specifier)

--- Comment #3 from Anastasius Focht <focht at gmx.net> 2011-07-17 04:52:23 CDT ---
Hello,

the problem is the command line for the child process.

Due to user32 wsprintf format parser not handling "%I64u" format specifier, it
gets passed unmodified to command line for the spawned child.

The child is a generic installer which uses one of these params as PE file
offset to read data from parent PE file (main installer archive) hence it must
be told about by parent.

--- snip ---
...
006c:Call KERNEL32.CreateProcessW(00000000,0032d108
L"C:\\users\\focht\\Temp\\_ir_sf_temp_3\\irsetup.exe __IRAOFF:I64u
\"__IRAFN:Z:\\home\\focht\\Downloads\\setup_1.26a_manual.exe\" \"__IRCT:0\"
\"__IRTSS:I64u\"
\"__IRSID:S-1-5-21-0-0-0-1000\"",00000000,00000000,00000000,00000400,00000000,00000000,0032c7b0,0032c7a0)
ret=68593d0b
...
006c:Ret  KERNEL32.CreateProcessW() retval=00000001 ret=68593d0b
--- snip ---

__IRAOFF:I64u = wrong (critical)
__IRTSS:I64u = wrong

The parent process uses user32.wsprintfA to construct parameters.
Example format string -> "__IRAOFF:%I64u" -> resulting string: "__IRAOFF:I64u"
(should contain integer value).

Regards

-- 
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
Do not reply to this email, post in Bugzilla using the
above URL to reply.
------- You are receiving this mail because: -------
You are watching all bug changes.



More information about the wine-bugs mailing list