kernel: use VirtualAlloc in GlobalAlloc16 to make such memory executable

Alexandre Julliard julliard at winehq.org
Wed Jul 11 04:31:30 CDT 2007


Mikołaj Zalewski <mikolaj at zalewski.pl> writes:

>  This patch is not enough to run Win16 programs on NX protected
> systems as there is also some code placed in the UMB by
> winedos/himem.c. I have a patch that makes the DOS area executable
> (see bug #8744) but I will have to look if that's what Windows
> does. In the mean time I'd like to know if there are some comments
> about this patch.

It's extremely wasteful, most GlobalAlloc blocks are fairly
small. What you should do is allocate them from an executable heap
instead of the default process heap.

-- 
Alexandre Julliard
julliard at winehq.org



More information about the wine-devel mailing list