Alexandre Julliard : kernel32: Make GMEM_DDESHARE blocks owned by the calling module.

Alexandre Julliard julliard at winehq.org
Mon Dec 28 09:16:09 CST 2009


Module: wine
Branch: master
Commit: eb4477120a5e5c4f30ae1672b8913b80d4dd4a4d
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=eb4477120a5e5c4f30ae1672b8913b80d4dd4a4d

Author: Alexandre Julliard <julliard at winehq.org>
Date:   Mon Dec 28 12:11:46 2009 +0100

kernel32: Make GMEM_DDESHARE blocks owned by the calling module.

---

 dlls/kernel32/global16.c |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletions(-)

diff --git a/dlls/kernel32/global16.c b/dlls/kernel32/global16.c
index c5dcc14..4c29389 100644
--- a/dlls/kernel32/global16.c
+++ b/dlls/kernel32/global16.c
@@ -283,7 +283,11 @@ HGLOBAL16 WINAPI GlobalAlloc16(
     HANDLE16 owner = GetCurrentPDB16();
 
     if (flags & GMEM_DDESHARE)
-        owner = GetExePtr(owner);  /* Make it a module handle */
+    {
+        /* make it owned by the calling module */
+        STACK16FRAME *frame = CURRENT_STACK16;
+        owner = GetExePtr( frame->cs );
+    }
     return GLOBAL_Alloc( flags, size, owner, WINE_LDT_FLAGS_DATA );
 }
 




More information about the wine-cvs mailing list