Fix for programs that store VirtualQueryEx results in signed integers (eg. The Borland Linker)

Alexandre Julliard julliard at winehq.org
Wed Mar 3 19:23:27 CST 2004


Troy Rollo <wine at troy.rollo.name> writes:

> So you'd rather ensure that we hold one or more anonymous maps reserving 
> everything above 0x80000000 (except for NT emulations, assuming the 3G 
> emulation is to be preferred, or there's an option for 3G), and when the 
> system needs to allocate something there, free a portion of the anonymous map 
> and reallocate?

Something like that yes. It means we need to keep track of the
allocations in that area, which cannot be done with the existing
mechanism since we currently rely on the kernel to manage the free
space. So there's a bit of work involved.

> Presumably this should all only apply to PE files since Winelib files should 
> be sufficiently aware of where they're running to be able to deal with 
> whatever the system wants to do with its memory.

Winelib apps can load PE dlls too, so they probably need the same
treatment. We can set the IMAGE_FILE_LARGE_ADDRESS flag if we don't
want that behavior.

-- 
Alexandre Julliard
julliard at winehq.org



More information about the wine-devel mailing list