From 6faa530e1286e40b0749adbae9ab538020bc9d8f Mon Sep 17 00:00:00 2001 From: Dmitry Timoshkov Date: Tue, 11 Aug 2020 12:49:53 +0100 Subject: [PATCH] ole32: Allow SetSize to move a fixed memory block. Signed-off-by: Huw Davies Signed-off-by: Alexandre Julliard --- dlls/ole32/hglobalstream.c | 2 +- dlls/ole32/tests/hglobalstream.c | 4 ---- 2 files changed, 1 insertion(+), 5 deletions(-) diff --git a/dlls/ole32/hglobalstream.c b/dlls/ole32/hglobalstream.c index ee345f6293a..4590bb9c431 100644 --- a/dlls/ole32/hglobalstream.c +++ b/dlls/ole32/hglobalstream.c @@ -426,7 +426,7 @@ static HRESULT WINAPI HGLOBALStreamImpl_SetSize( /* * Re allocate the HGlobal to fit the new size of the stream. */ - supportHandle = GlobalReAlloc(This->handle->hglobal, libNewSize.u.LowPart, 0); + supportHandle = GlobalReAlloc(This->handle->hglobal, libNewSize.u.LowPart, GMEM_MOVEABLE); if (supportHandle == 0) return E_OUTOFMEMORY; diff --git a/dlls/ole32/tests/hglobalstream.c b/dlls/ole32/tests/hglobalstream.c index 87c502dc2f4..2f386914afc 100644 --- a/dlls/ole32/tests/hglobalstream.c +++ b/dlls/ole32/tests/hglobalstream.c @@ -625,20 +625,16 @@ static void test_IStream_Clone(void) newsize.QuadPart = 0x8000; hr = IStream_SetSize(stream, newsize); -todo_wine ok(hr == S_OK, "unexpected %#x\n", hr); stream_info(stream, &hmem, &size, &pos); ok(hmem != 0, "unexpected %p\n", hmem); -todo_wine ok(hmem != orig_hmem, "unexpected %p\n", hmem); -todo_wine ok(size == 0x8000, "unexpected %#x\n", size); ok(pos == 0, "unexpected %d\n", pos); stream_info(clone, &hmem_clone, &size, &pos); ok(hmem_clone == hmem, "handles should match\n"); -todo_wine ok(size == 0x8000, "unexpected %#x\n", size); ok(pos == 0, "unexpected %d\n", pos); -- 2.11.4.GIT