[Bug 36737] Steel Armor: Blaze of War crashes on start with built-in msvcr80 (malloc and operator new are required to return memory on a 16-byte boundary)

wine-bugs at winehq.org wine-bugs at winehq.org
Mon Jun 16 08:43:02 CDT 2014


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

Piotr Caban <piotr.caban at gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |piotr.caban at gmail.com

--- Comment #3 from Piotr Caban <piotr.caban at gmail.com> ---
(In reply to Anastasius Focht from comment #2)
> --- quote ---
> 
> http://msdn.microsoft.com/en-us/library/ycsb6wwf%28vs.90%29.aspx
> 
> --- quote ---
> malloc Alignment
> 
> Visual Studio 2008
> 
> malloc is required to return memory on a 16-byte boundary.

I wrote a test for it and it's only true for 64-bit applications. 32-bit
applications are aligned to 8 bytes. Checked with msvcr80.dll and msvcr90.dll.

The problem may be somewhere else or may be related to stack state after dll
initialization.

A very simple tests that allocates 16-bytes blocks outputs (with native dll,
32-bit application):
malloc(16): 00523810
malloc(16): 00524830
malloc(16): 00524848

And with builtin msvcr80.dll:
malloc(16): 00411428
malloc(16): 00411440
malloc(16): 00411458

-- 
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