Rebase against 85cb1ff91ed4d48559c5500e2ccb0b15801edc05.

This commit is contained in:
Alistair Leslie-Hughes
2022-01-28 12:48:29 +11:00
parent b1a5648b37
commit cafb155af5
15 changed files with 96 additions and 90 deletions

View File

@@ -1,24 +1,25 @@
From bbb052887041a94a770154f5b9e266b17876fe9a Mon Sep 17 00:00:00 2001
From 209317c803637eda7411ec3094dfb3cfa3ada93a Mon Sep 17 00:00:00 2001
From: Dmitry Timoshkov <dmitry@baikal.ru>
Date: Tue, 24 Nov 2015 17:22:02 +0800
Subject: oleaut32: Implement a better stub for IPicture::SaveAsFile.
Subject: [PATCH] oleaut32: Implement a better stub for IPicture::SaveAsFile.
Based on OLEPictureImpl_Save implementation.
For bug 8532.
---
dlls/oleaut32/olepicture.c | 92 ++++++++++++++++++++++++++++++++++------
dlls/oleaut32/olepicture.c | 92 +++++++++++++++++++++++++++-----
dlls/oleaut32/tests/olepicture.c | 9 ----
2 files changed, 79 insertions(+), 22 deletions(-)
diff --git a/dlls/oleaut32/olepicture.c b/dlls/oleaut32/olepicture.c
index 44157de..c57b878 100644
index a3bbdc52a0f..ad4aff2aecc 100644
--- a/dlls/oleaut32/olepicture.c
+++ b/dlls/oleaut32/olepicture.c
@@ -834,19 +834,6 @@ static HRESULT WINAPI OLEPictureImpl_PictureChanged(IPicture *iface)
@@ -859,19 +859,6 @@ static HRESULT WINAPI OLEPictureImpl_PictureChanged(IPicture *iface)
return S_OK;
}
/************************************************************************
-/************************************************************************
- * OLEPictureImpl_SaveAsFile
- */
-static HRESULT WINAPI OLEPictureImpl_SaveAsFile(IPicture *iface,
@@ -31,11 +32,10 @@ index 44157de..c57b878 100644
- return IStream_Write(pstream,This->data,This->datalen,(ULONG*)pcbSize);
-}
-
-/************************************************************************
/************************************************************************
* OLEPictureImpl_get_Attributes
*/
static HRESULT WINAPI OLEPictureImpl_get_Attributes(IPicture *iface,
@@ -1859,6 +1846,85 @@ static HRESULT WINAPI OLEPictureImpl_GetSizeMax(
@@ -1915,6 +1902,85 @@ static HRESULT WINAPI OLEPictureImpl_GetSizeMax(
return E_NOTIMPL;
}
@@ -122,58 +122,58 @@ index 44157de..c57b878 100644
/************************************************************************
* IDispatch
diff --git a/dlls/oleaut32/tests/olepicture.c b/dlls/oleaut32/tests/olepicture.c
index 0903298..0c69cbd 100644
index 0582bd2266e..ce87dd3d4d4 100644
--- a/dlls/oleaut32/tests/olepicture.c
+++ b/dlls/oleaut32/tests/olepicture.c
@@ -1079,18 +1079,14 @@ static void test_load_save_bmp(void)
@@ -1178,18 +1178,14 @@ static void test_load_save_bmp(void)
size = -1;
hr = IPicture_SaveAsFile(pic, dst_stream, TRUE, &size);
ok(hr == S_OK, "IPicture_SaveasFile error %#x\n", hr);
-todo_wine
- todo_wine
ok(size == 66, "expected 66, got %d\n", size);
mem = GlobalLock(hmem);
-todo_wine
- todo_wine
ok(!memcmp(&mem[0], "BM", 2), "got wrong bmp header %04x\n", mem[0]);
GlobalUnlock(hmem);
size = -1;
hr = IPicture_SaveAsFile(pic, dst_stream, FALSE, &size);
-todo_wine
- todo_wine
ok(hr == E_FAIL, "expected E_FAIL, got %#x\n", hr);
-todo_wine
- todo_wine
ok(size == -1, "expected -1, got %d\n", size);
offset.QuadPart = 0;
@@ -1157,15 +1153,12 @@ static void test_load_save_icon(void)
todo_wine
@@ -1256,15 +1252,12 @@ static void test_load_save_icon(void)
todo_wine
ok(size == 766, "expected 766, got %d\n", size);
mem = GlobalLock(hmem);
-todo_wine
- todo_wine
ok(mem[0] == 0x00010000, "got wrong icon header %04x\n", mem[0]);
GlobalUnlock(hmem);
size = -1;
hr = IPicture_SaveAsFile(pic, dst_stream, FALSE, &size);
-todo_wine
- todo_wine
ok(hr == E_FAIL, "expected E_FAIL, got %#x\n", hr);
-todo_wine
- todo_wine
ok(size == -1, "expected -1, got %d\n", size);
offset.QuadPart = 0;
@@ -1231,13 +1224,11 @@ static void test_load_save_empty_picture(void)
@@ -1330,13 +1323,11 @@ static void test_load_save_empty_picture(void)
size = -1;
hr = IPicture_SaveAsFile(pic, dst_stream, TRUE, &size);
ok(hr == S_OK, "IPicture_SaveasFile error %#x\n", hr);
-todo_wine
- todo_wine
ok(size == -1, "expected -1, got %d\n", size);
size = -1;
hr = IPicture_SaveAsFile(pic, dst_stream, FALSE, &size);
ok(hr == S_OK, "IPicture_SaveasFile error %#x\n", hr);
-todo_wine
- todo_wine
ok(size == -1, "expected -1, got %d\n", size);
hr = IPicture_QueryInterface(pic, &IID_IPersistStream, (void **)&src_stream);
--
2.7.1
2.34.1