[2/3] kernel32/heap: Fix some hacks in GlobalMemoryStatus(). (try 2)

Adam Martinson amartinson at codeweavers.com
Fri Jun 3 15:19:18 CDT 2011

On 06/03/2011 02:36 PM, Dmitry Timoshkov wrote:
> Adam Martinson<amartinson at codeweavers.com>  wrote:
>>>> The issue is that Dragon NaturallySpeaking 7 setup doesn't have the
>>>> IMAGE_FILE_LARGE_ADDRESS_AWARE flag set, but it uses InstallShield 6 as
>>>> a child process, which does have it set.  IS6 calls GlobalMemoryStatus()
>>>> and passes the data back to DNS7 setup, and if you have more than 2GB
>>>> RAM DNS7 setup thinks you have negative memory.  Windows figures this
>>>> out and rounds to 2GB, Wine does not.
>>> I'd suggest to write some tests and try to understand what does Windows
>>> and at which step.
>> I don't know of any way to do this with the current testing framework,
>> and I think the apps that require it (DNS7 is the only one I know of)
>> give us a clear enough picture.  If there are other apps that need
>> specific things out of this kind of behavior then I'll try to figure out
>> some way to incorporate it in the tests.
> Start with writing a simple Windows app that replicates what DNS/IS6 are
> doing.
Alright, I'll see what I can come up with over the weekend.

>> Ah, I thought you were talking about
>> <http://msdn.microsoft.com/en-us/library/aa366912%28v=vs.85%29.aspx>, so
>> I was trying to figure out how to exclude system processes if it was
>> called by an app process, etc, which seems like a reasonable thing to
>> do.  Attached is a version which should appropriately limit the scope.
> You don't understand, it doesn't matter what DLLs are loaded in other
> processes, that shouldn't have any influence on address space limitations
> in current process.
No, I mean the process tree was something like wine-preloader -> DNS7 
setup -> IS6.  No point in checking system processes here, tho I think 
all of Wine's binaries set IMAGE_FILE_LARGE_ADDRESS_AWARE.  What you're 
saying is correct, but we're talking about different things.

More information about the wine-devel mailing list