This patch attempts to address the problem by patching RtlSizeHeap() to subtract 8 (8 being HGLOBAL_STORAGE) from the pointer if it doesn't seem like a valid pointer, to cater to GMEM_MOVEABLE pointers actually starting 8 bytes earlier.
I am not familiar with the internals of Windows' memory management so this might not be the best solution, but all the heap tests pass so it can't be that wrong either ;). It certainly gets wxWidgets applications working.
Signed-off-by: Damjan Jovanovic damjan.jov@gmail.com --- dlls/kernel32/tests/heap.c | 2 +- dlls/ntdll/heap.c | 50 ++++++++++++++++++++++++-------------- 2 files changed, 33 insertions(+), 19 deletions(-)