diff --git a/patches/oleaut32-Load_Save_EMF/0001-oleaut32-tests-Add-some-tests-for-loading-and-saving.patch b/patches/oleaut32-Load_Save_EMF/0001-oleaut32-tests-Add-some-tests-for-loading-and-saving.patch index 778e1188..a565cab5 100644 --- a/patches/oleaut32-Load_Save_EMF/0001-oleaut32-tests-Add-some-tests-for-loading-and-saving.patch +++ b/patches/oleaut32-Load_Save_EMF/0001-oleaut32-tests-Add-some-tests-for-loading-and-saving.patch @@ -37,8 +37,8 @@ index 0903298..de45603 100644 + + desc.cbSizeofstruct = sizeof(desc); + desc.picType = PICTYPE_ENHMETAFILE; -+ desc.u.emf.hemf = CloseEnhMetaFile(hdc); -+ ok(desc.u.emf.hemf != 0, "CloseEnhMetaFile failed\n"); ++ desc.emf.hemf = CloseEnhMetaFile(hdc); ++ ok(desc.emf.hemf != 0, "CloseEnhMetaFile failed\n"); + hr = OleCreatePictureIndirect(&desc, &IID_IPicture, FALSE, (void**)&pic); + ok(hr == S_OK, "OleCreatePictureIndirect error %#x\n", hr); + @@ -49,7 +49,7 @@ index 0903298..de45603 100644 + + hr = IPicture_get_Handle(pic, &handle); + ok(hr == S_OK,"get_Handle error %#8x\n", hr); -+ ok(IntToPtr(handle) == desc.u.emf.hemf, "get_Handle returned wrong handle %#x\n", handle); ++ ok(IntToPtr(handle) == desc.emf.hemf, "get_Handle returned wrong handle %#x\n", handle); + + hmem = GlobalAlloc(GMEM_MOVEABLE, 0); + hr = CreateStreamOnHGlobal(hmem, FALSE, &dst_stream); @@ -101,7 +101,7 @@ index 0903298..de45603 100644 + GlobalUnlock(hmem); + GlobalFree(hmem); + -+ DeleteEnhMetaFile(desc.u.emf.hemf); ++ DeleteEnhMetaFile(desc.emf.hemf); + IPicture_Release(pic); +} + diff --git a/patches/oleaut32-Load_Save_EMF/0002-oleaut32-Add-support-for-loading-and-saving-EMF-to-I.patch b/patches/oleaut32-Load_Save_EMF/0002-oleaut32-Add-support-for-loading-and-saving-EMF-to-I.patch index fc385537..1da43784 100644 --- a/patches/oleaut32-Load_Save_EMF/0002-oleaut32-Add-support-for-loading-and-saving-EMF-to-I.patch +++ b/patches/oleaut32-Load_Save_EMF/0002-oleaut32-Add-support-for-loading-and-saving-EMF-to-I.patch @@ -22,7 +22,7 @@ index a2a54bd..3fd7638 100644 +{ + ENHMETAHEADER emh; + -+ GetEnhMetaFileHeader(This->desc.u.emf.hemf, sizeof(emh), &emh); ++ GetEnhMetaFileHeader(This->desc.emf.hemf, sizeof(emh), &emh); + + This->origWidth = 0; + This->origHeight = 0; @@ -69,7 +69,7 @@ index a2a54bd..3fd7638 100644 + case PICTYPE_ENHMETAFILE: + if (This->bIsDirty || !This->data) + { -+ serializeResult = serializeEMF(This->desc.u.emf.hemf, &pIconData, &iDataSize); ++ serializeResult = serializeEMF(This->desc.emf.hemf, &pIconData, &iDataSize); + if (!serializeResult) + { + hResult = E_FAIL; diff --git a/patches/oleaut32-OLEPictureImpl_SaveAsFile/0002-oleaut32-Implement-a-better-stub-for-IPicture-SaveAs.patch b/patches/oleaut32-OLEPictureImpl_SaveAsFile/0002-oleaut32-Implement-a-better-stub-for-IPicture-SaveAs.patch index 188a496a..3a8794d0 100644 --- a/patches/oleaut32-OLEPictureImpl_SaveAsFile/0002-oleaut32-Implement-a-better-stub-for-IPicture-SaveAs.patch +++ b/patches/oleaut32-OLEPictureImpl_SaveAsFile/0002-oleaut32-Implement-a-better-stub-for-IPicture-SaveAs.patch @@ -63,7 +63,7 @@ index bbc5e2aa9c8..0410d2b3cad 100644 + + if (This->bIsDirty || !This->data) + { -+ if (!serializeIcon(This->desc.u.icon.hicon, &data, &data_size)) ++ if (!serializeIcon(This->desc.icon.hicon, &data, &data_size)) + return E_FAIL; + HeapFree(GetProcessHeap(), 0, This->data); + This->data = data; @@ -81,7 +81,7 @@ index bbc5e2aa9c8..0410d2b3cad 100644 + switch (This->keepOrigFormat ? This->loadtime_format : BITMAP_FORMAT_BMP) + { + case BITMAP_FORMAT_BMP: -+ if (!serializeBMP(This->desc.u.bmp.hbitmap, &data, &data_size)) ++ if (!serializeBMP(This->desc.bmp.hbitmap, &data, &data_size)) + return E_FAIL; + break; + case BITMAP_FORMAT_JPEG: diff --git a/patches/oleaut32-OLEPictureImpl_SaveAsFile/0003-oleaut32-Implement-SaveAsFile-for-PICTYPE_ENHMETAFIL.patch b/patches/oleaut32-OLEPictureImpl_SaveAsFile/0003-oleaut32-Implement-SaveAsFile-for-PICTYPE_ENHMETAFIL.patch index b158d1cf..9f2a1457 100644 --- a/patches/oleaut32-OLEPictureImpl_SaveAsFile/0003-oleaut32-Implement-SaveAsFile-for-PICTYPE_ENHMETAFIL.patch +++ b/patches/oleaut32-OLEPictureImpl_SaveAsFile/0003-oleaut32-Implement-SaveAsFile-for-PICTYPE_ENHMETAFIL.patch @@ -24,7 +24,7 @@ index 7d13942..db90c4c 100644 + + if (This->bIsDirty || !This->data) + { -+ if (!serializeEMF(This->desc.u.emf.hemf, &data, &data_size)) ++ if (!serializeEMF(This->desc.emf.hemf, &data, &data_size)) + return E_FAIL; + HeapFree(GetProcessHeap(), 0, This->data); + This->data = data; diff --git a/patches/oleaut32-OleLoadPicture/0001-oleaut32-OleLoadPicture-should-create-a-DIB-section-.patch b/patches/oleaut32-OleLoadPicture/0001-oleaut32-OleLoadPicture-should-create-a-DIB-section-.patch index f801376a..5153ae31 100644 --- a/patches/oleaut32-OleLoadPicture/0001-oleaut32-OleLoadPicture-should-create-a-DIB-section-.patch +++ b/patches/oleaut32-OleLoadPicture/0001-oleaut32-OleLoadPicture-should-create-a-DIB-section-.patch @@ -1,21 +1,21 @@ -From 182a2cbf47a8562a43db6bdc8bd29e0980a9ddcd Mon Sep 17 00:00:00 2001 +From a9cd52667f49a57900a08591cd66b40747a12db0 Mon Sep 17 00:00:00 2001 From: Dmitry Timoshkov Date: Thu, 21 Apr 2016 14:40:58 +0800 -Subject: oleaut32: OleLoadPicture should create a DIB section for a being - loaded bitmap. (v3) +Subject: [PATCH] oleaut32: OleLoadPicture should create a DIB section for a + being loaded bitmap. (v3) Application in the bug 39474 depends on this (GetObject/bmBits should not be NULL, otherwise it crashes). --- - dlls/oleaut32/olepicture.c | 65 ++++++++++++++++------------------------ + dlls/oleaut32/olepicture.c | 65 +++++++++++++------------------- dlls/oleaut32/tests/olepicture.c | 2 +- 2 files changed, 27 insertions(+), 40 deletions(-) diff --git a/dlls/oleaut32/olepicture.c b/dlls/oleaut32/olepicture.c -index bfca22f..1b6fb2c 100644 +index 45baa74a439..22a34d6e380 100644 --- a/dlls/oleaut32/olepicture.c +++ b/dlls/oleaut32/olepicture.c -@@ -999,23 +999,16 @@ static HRESULT OLEPictureImpl_LoadDIB(OLEPictureImpl *This, BYTE *xbuf, ULONG xr +@@ -983,23 +983,16 @@ static HRESULT OLEPictureImpl_LoadDIB(OLEPictureImpl *This, BYTE *xbuf, ULONG xr { BITMAPFILEHEADER *bfh = (BITMAPFILEHEADER*)xbuf; BITMAPINFO *bi = (BITMAPINFO*)(bfh+1); @@ -27,7 +27,7 @@ index bfca22f..1b6fb2c 100644 - * components which are in both - */ - hdcref = GetDC(0); -- This->desc.u.bmp.hbitmap = CreateDIBitmap( +- This->desc.bmp.hbitmap = CreateDIBitmap( - hdcref, - &(bi->bmiHeader), - CBM_INIT, @@ -36,8 +36,8 @@ index bfca22f..1b6fb2c 100644 - DIB_RGB_COLORS - ); - ReleaseDC(0, hdcref); -+ This->desc.u.bmp.hbitmap = CreateDIBSection(0, bi, DIB_RGB_COLORS, &bits, NULL, 0); - if (This->desc.u.bmp.hbitmap == 0) ++ This->desc.bmp.hbitmap = CreateDIBSection(0, bi, DIB_RGB_COLORS, &bits, NULL, 0); + if (This->desc.bmp.hbitmap == 0) return E_FAIL; + + GetObjectA(This->desc.u.bmp.hbitmap, sizeof(bmp), &bmp); @@ -46,7 +46,7 @@ index bfca22f..1b6fb2c 100644 This->desc.picType = PICTYPE_BITMAP; OLEPictureImpl_SetBitmap(This); return S_OK; -@@ -1025,10 +1018,9 @@ static HRESULT OLEPictureImpl_LoadWICSource(OLEPictureImpl *This, IWICBitmapSour +@@ -1009,10 +1002,9 @@ static HRESULT OLEPictureImpl_LoadWICSource(OLEPictureImpl *This, IWICBitmapSour { HRESULT hr; BITMAPINFOHEADER bih; @@ -58,7 +58,7 @@ index bfca22f..1b6fb2c 100644 WICRect rc; IWICBitmapSource *real_source; UINT x, y; -@@ -1056,34 +1048,28 @@ static HRESULT OLEPictureImpl_LoadWICSource(OLEPictureImpl *This, IWICBitmapSour +@@ -1040,34 +1032,28 @@ static HRESULT OLEPictureImpl_LoadWICSource(OLEPictureImpl *This, IWICBitmapSour stride = 4 * width; buffersize = stride * height; @@ -71,8 +71,8 @@ index bfca22f..1b6fb2c 100644 goto end; } -+ This->desc.u.bmp.hbitmap = CreateDIBSection(0, (BITMAPINFO*)&bih, DIB_RGB_COLORS, (void **)&bits, NULL, 0); -+ if (This->desc.u.bmp.hbitmap == 0) ++ This->desc.bmp.hbitmap = CreateDIBSection(0, (BITMAPINFO*)&bih, DIB_RGB_COLORS, (void **)&bits, NULL, 0); ++ if (This->desc.bmp.hbitmap == 0) + { + hr = E_FAIL; + goto end; @@ -87,7 +87,7 @@ index bfca22f..1b6fb2c 100644 - goto end; - - hdcref = GetDC(0); -- This->desc.u.bmp.hbitmap = CreateDIBitmap( +- This->desc.bmp.hbitmap = CreateDIBitmap( - hdcref, - &bih, - CBM_INIT, @@ -95,15 +95,15 @@ index bfca22f..1b6fb2c 100644 - (BITMAPINFO*)&bih, - DIB_RGB_COLORS); - -- if (This->desc.u.bmp.hbitmap == 0) +- if (This->desc.bmp.hbitmap == 0) { - hr = E_FAIL; - ReleaseDC(0, hdcref); -+ DeleteObject(This->desc.u.bmp.hbitmap); ++ DeleteObject(This->desc.bmp.hbitmap); goto end; } -@@ -1097,23 +1083,25 @@ static HRESULT OLEPictureImpl_LoadWICSource(OLEPictureImpl *This, IWICBitmapSour +@@ -1081,23 +1067,25 @@ static HRESULT OLEPictureImpl_LoadWICSource(OLEPictureImpl *This, IWICBitmapSour if((*pixel & 0x80000000) == 0) { has_alpha = TRUE; @@ -133,7 +133,7 @@ index bfca22f..1b6fb2c 100644 (BITMAPINFO*)&bih, DIB_RGB_COLORS ); -@@ -1138,12 +1126,11 @@ static HRESULT OLEPictureImpl_LoadWICSource(OLEPictureImpl *This, IWICBitmapSour +@@ -1122,12 +1110,11 @@ static HRESULT OLEPictureImpl_LoadWICSource(OLEPictureImpl *This, IWICBitmapSour DeleteDC(hdcBmp); DeleteDC(hdcXor); DeleteDC(hdcMask); @@ -149,10 +149,10 @@ index bfca22f..1b6fb2c 100644 return hr; } diff --git a/dlls/oleaut32/tests/olepicture.c b/dlls/oleaut32/tests/olepicture.c -index b716f25..795ee71 100644 +index 7b45b690935..fa7e8009cbd 100644 --- a/dlls/oleaut32/tests/olepicture.c +++ b/dlls/oleaut32/tests/olepicture.c -@@ -240,7 +240,7 @@ test_pic_with_stream(LPSTREAM stream, unsigned int imgsize) +@@ -239,7 +239,7 @@ test_pic_with_stream(LPSTREAM stream, unsigned int imgsize) { BITMAP bmp; GetObjectA(UlongToHandle(handle), sizeof(BITMAP), &bmp); @@ -162,5 +162,5 @@ index b716f25..795ee71 100644 width = 0; -- -2.9.0 +2.40.1 diff --git a/patches/oleaut32-OleLoadPicture/0002-oleaut32-Make-OleLoadPicture-load-DIBs-using-WIC-dec.patch b/patches/oleaut32-OleLoadPicture/0002-oleaut32-Make-OleLoadPicture-load-DIBs-using-WIC-dec.patch index 90003d7f..1f1392e7 100644 --- a/patches/oleaut32-OleLoadPicture/0002-oleaut32-Make-OleLoadPicture-load-DIBs-using-WIC-dec.patch +++ b/patches/oleaut32-OleLoadPicture/0002-oleaut32-Make-OleLoadPicture-load-DIBs-using-WIC-dec.patch @@ -1,7 +1,7 @@ -From edeffac23fae035e8b7910e5e4d97a48d7556220 Mon Sep 17 00:00:00 2001 +From e72c3ef9b52c3b5b099907c017206f168cff419f Mon Sep 17 00:00:00 2001 From: Dmitry Timoshkov Date: Wed, 5 Apr 2017 12:03:19 +0800 -Subject: oleaut32: Make OleLoadPicture load DIBs using WIC decoder. +Subject: [PATCH] oleaut32: Make OleLoadPicture load DIBs using WIC decoder. CreateDIBSection doesn't support RLE compressed bitmaps. @@ -13,10 +13,10 @@ installer. 2 files changed, 12 insertions(+), 21 deletions(-) diff --git a/dlls/oleaut32/olepicture.c b/dlls/oleaut32/olepicture.c -index 7d2f9a2eec..96304e0644 100644 +index 22a34d6e380..37c3983ed21 100644 --- a/dlls/oleaut32/olepicture.c +++ b/dlls/oleaut32/olepicture.c -@@ -998,25 +998,6 @@ static HRESULT WINAPI OLEPictureImpl_IsDirty( +@@ -979,25 +979,6 @@ static HRESULT WINAPI OLEPictureImpl_IsDirty( return E_NOTIMPL; } @@ -27,8 +27,8 @@ index 7d2f9a2eec..96304e0644 100644 - void *bits; - BITMAP bmp; - -- This->desc.u.bmp.hbitmap = CreateDIBSection(0, bi, DIB_RGB_COLORS, &bits, NULL, 0); -- if (This->desc.u.bmp.hbitmap == 0) +- This->desc.bmp.hbitmap = CreateDIBSection(0, bi, DIB_RGB_COLORS, &bits, NULL, 0); +- if (This->desc.bmp.hbitmap == 0) - return E_FAIL; - - GetObjectA(This->desc.u.bmp.hbitmap, sizeof(bmp), &bmp); @@ -42,7 +42,7 @@ index 7d2f9a2eec..96304e0644 100644 static HRESULT OLEPictureImpl_LoadWICSource(OLEPictureImpl *This, IWICBitmapSource *src) { HRESULT hr; -@@ -1497,7 +1478,7 @@ static HRESULT WINAPI OLEPictureImpl_Load(IPersistStream* iface, IStream *pStm) +@@ -1478,7 +1459,7 @@ static HRESULT WINAPI OLEPictureImpl_Load(IPersistStream* iface, IStream *pStm) hr = OLEPictureImpl_LoadWICDecoder(This, &CLSID_WICJpegDecoder, xbuf, xread); break; case BITMAP_FORMAT_BMP: /* Bitmap */ @@ -52,10 +52,10 @@ index 7d2f9a2eec..96304e0644 100644 case BITMAP_FORMAT_PNG: /* PNG */ hr = OLEPictureImpl_LoadWICDecoder(This, &CLSID_WICPngDecoder, xbuf, xread); diff --git a/dlls/oleaut32/tests/olepicture.c b/dlls/oleaut32/tests/olepicture.c -index 8147bf740c..1e4d55debc 100644 +index fa7e8009cbd..a1c3ccf20c3 100644 --- a/dlls/oleaut32/tests/olepicture.c +++ b/dlls/oleaut32/tests/olepicture.c -@@ -98,7 +98,7 @@ static const unsigned char pngimage[285] = { +@@ -97,7 +97,7 @@ static const unsigned char pngimage[285] = { 0xe7,0x00,0x00,0x00,0x00,0x49,0x45,0x4e,0x44,0xae,0x42,0x60,0x82 }; @@ -64,7 +64,7 @@ index 8147bf740c..1e4d55debc 100644 static const unsigned char bmpimage[66] = { 0x42,0x4d,0x42,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3e,0x00,0x00,0x00,0x28,0x00, 0x00,0x00,0x01,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x01,0x00,0x01,0x00,0x00,0x00, -@@ -107,6 +107,15 @@ static const unsigned char bmpimage[66] = { +@@ -106,6 +106,15 @@ static const unsigned char bmpimage[66] = { 0x00,0x00 }; @@ -80,7 +80,7 @@ index 8147bf740c..1e4d55debc 100644 /* 2x2 pixel gif */ static const unsigned char gif4pixel[42] = { 0x47,0x49,0x46,0x38,0x37,0x61,0x02,0x00,0x02,0x00,0xa1,0x00,0x00,0x00,0x00,0x00, -@@ -1461,6 +1470,7 @@ START_TEST(olepicture) +@@ -1492,6 +1501,7 @@ START_TEST(olepicture) test_pic(gifimage, sizeof(gifimage)); test_pic(jpgimage, sizeof(jpgimage)); test_pic(bmpimage, sizeof(bmpimage)); @@ -89,5 +89,5 @@ index 8147bf740c..1e4d55debc 100644 /* FIXME: No PNG support in Windows... */ if (0) test_pic(pngimage, sizeof(pngimage)); -- -2.11.0 +2.40.1 diff --git a/patches/shell32-ACE_Viewer/0002-shell32-Add-security-property-tab.patch b/patches/shell32-ACE_Viewer/0002-shell32-Add-security-property-tab.patch index 18da03db..0285b12b 100644 --- a/patches/shell32-ACE_Viewer/0002-shell32-Add-security-property-tab.patch +++ b/patches/shell32-ACE_Viewer/0002-shell32-Add-security-property-tab.patch @@ -432,7 +432,7 @@ index 14cd9aeeebe..ed3a07c423d 100644 + if (FAILED(IDataObject_GetData(pDo, &format, &stgm))) + return; + -+ if (!(len = DragQueryFileW((HDROP)stgm.DUMMYUNIONNAME.hGlobal, 0, NULL, 0))) ++ if (!(len = DragQueryFileW((HDROP)stgm.hGlobal, 0, NULL, 0))) + { + ReleaseStgMedium(&stgm); + return; @@ -444,7 +444,7 @@ index 14cd9aeeebe..ed3a07c423d 100644 + return; + } + -+ len = DragQueryFileW((HDROP)stgm.DUMMYUNIONNAME.hGlobal, 0, path, len + 1); ++ len = DragQueryFileW((HDROP)stgm.hGlobal, 0, path, len + 1); + ReleaseStgMedium(&stgm); + if (!len) goto done; + diff --git a/patches/shell32-Context_Menu/0005-shell32-Add-support-for-setting-getting-PREFERREDDRO.patch b/patches/shell32-Context_Menu/0005-shell32-Add-support-for-setting-getting-PREFERREDDRO.patch index f69fc432..8d6ddccc 100644 --- a/patches/shell32-Context_Menu/0005-shell32-Add-support-for-setting-getting-PREFERREDDRO.patch +++ b/patches/shell32-Context_Menu/0005-shell32-Add-support-for-setting-getting-PREFERREDDRO.patch @@ -1,29 +1,20 @@ -From 9540fdc5b1668e4b575ce00539454b8ac66457a0 Mon Sep 17 00:00:00 2001 +From c7ab99f5961daaf0c81a710d332dca5fc79528c0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michael=20M=C3=BCller?= Date: Sat, 2 Apr 2016 04:15:02 +0200 -Subject: shell32: Add support for setting/getting PREFERREDDROPEFFECT in - IDataObject. +Subject: [PATCH] shell32: Add support for setting/getting PREFERREDDROPEFFECT + in IDataObject. --- - dlls/shell32/clipboard.c | 40 ++++++++++++++++++++++++++++++++++++++++ - dlls/shell32/dataobject.c | 24 +++++++++++++++++++++--- + dlls/shell32/clipboard.c | 40 +++++++++++++++++++++++++++++++++++++ + dlls/shell32/dataobject.c | 24 +++++++++++++++++++--- dlls/shell32/shell32_main.h | 2 ++ 3 files changed, 63 insertions(+), 3 deletions(-) diff --git a/dlls/shell32/clipboard.c b/dlls/shell32/clipboard.c -index 82df534..9c6f284 100644 +index 2f5c63bed9d..27c3421cf28 100644 --- a/dlls/shell32/clipboard.c +++ b/dlls/shell32/clipboard.c -@@ -38,6 +38,8 @@ - #include - #include - -+#define NONAMELESSUNION -+ - #include "windef.h" - #include "winbase.h" - #include "winreg.h" -@@ -214,3 +216,41 @@ HGLOBAL RenderFILENAMEW (LPITEMIDLIST pidlRoot, LPITEMIDLIST * apidl, UINT cidl) +@@ -212,3 +214,41 @@ HGLOBAL RenderFILENAMEW (LPITEMIDLIST pidlRoot, LPITEMIDLIST * apidl, UINT cidl) return hGlobal; } @@ -55,21 +46,21 @@ index 82df534..9c6f284 100644 + + TRACE("(%p, %p)\n", pmedium, value); + -+ pEffect = GlobalLock(pmedium->u.hGlobal); ++ pEffect = GlobalLock(pmedium->hGlobal); + if (pEffect) + { + *value = *pEffect; + result = S_OK; -+ GlobalUnlock(pmedium->u.hGlobal); ++ GlobalUnlock(pmedium->hGlobal); + } + + return result; +} diff --git a/dlls/shell32/dataobject.c b/dlls/shell32/dataobject.c -index cc7b63e..5a18a1a 100644 +index 3cd86845c42..cc7ab601bac 100644 --- a/dlls/shell32/dataobject.c +++ b/dlls/shell32/dataobject.c -@@ -197,7 +197,7 @@ LPENUMFORMATETC IEnumFORMATETC_Constructor(UINT cfmt, const FORMATETC afmt[]) +@@ -193,7 +193,7 @@ LPENUMFORMATETC IEnumFORMATETC_Constructor(UINT cfmt, const FORMATETC afmt[]) */ /* number of supported formats */ @@ -78,7 +69,7 @@ index cc7b63e..5a18a1a 100644 typedef struct { -@@ -209,12 +209,13 @@ typedef struct +@@ -205,12 +205,13 @@ typedef struct LPITEMIDLIST pidl; LPITEMIDLIST * apidl; UINT cidl; @@ -93,18 +84,18 @@ index cc7b63e..5a18a1a 100644 } IDataObjectImpl; static inline IDataObjectImpl *impl_from_IDataObject(IDataObject *iface) -@@ -314,6 +315,10 @@ static HRESULT WINAPI IDataObject_fnGetData(IDataObject *iface, LPFORMATETC pfor +@@ -310,6 +311,10 @@ static HRESULT WINAPI IDataObject_fnGetData(IDataObject *iface, LPFORMATETC pfor if (This->cidl < 1) return(E_UNEXPECTED); - pmedium->u.hGlobal = RenderFILENAMEW(This->pidl, This->apidl, This->cidl); + pmedium->hGlobal = RenderFILENAMEW(This->pidl, This->apidl, This->cidl); } + else if (pformatetcIn->cfFormat == This->cfDropEffect) + { -+ pmedium->u.hGlobal = RenderPREFERREDDROPEFFECT(This->dropEffect); ++ pmedium->hGlobal = RenderPREFERREDDROPEFFECT(This->dropEffect); + } else { FIXME("-- expected clipformat not implemented\n"); -@@ -368,7 +373,17 @@ static HRESULT WINAPI IDataObject_fnGetCanonicalFormatEtc(IDataObject *iface, LP +@@ -364,7 +369,17 @@ static HRESULT WINAPI IDataObject_fnGetCanonicalFormatEtc(IDataObject *iface, LP static HRESULT WINAPI IDataObject_fnSetData(IDataObject *iface, LPFORMATETC pformatetc, STGMEDIUM *pmedium, BOOL fRelease) { IDataObjectImpl *This = impl_from_IDataObject(iface); @@ -123,7 +114,7 @@ index cc7b63e..5a18a1a 100644 return E_NOTIMPL; } -@@ -441,14 +456,17 @@ IDataObject* IDataObject_Constructor(HWND hwndOwner, +@@ -437,14 +452,17 @@ IDataObject* IDataObject_Constructor(HWND hwndOwner, dto->pidl = ILClone(pMyPidl); dto->apidl = _ILCopyaPidl(apidl, cidl); dto->cidl = cidl; @@ -142,10 +133,10 @@ index cc7b63e..5a18a1a 100644 TRACE("(%p)->(apidl=%p cidl=%u)\n",dto, apidl, cidl); diff --git a/dlls/shell32/shell32_main.h b/dlls/shell32/shell32_main.h -index 492f79f..29822b7 100644 +index f9607585184..56f0a631d08 100644 --- a/dlls/shell32/shell32_main.h +++ b/dlls/shell32/shell32_main.h -@@ -130,6 +130,8 @@ HGLOBAL RenderHDROP(LPITEMIDLIST pidlRoot, LPITEMIDLIST * apidl, UINT cidl) DECL +@@ -141,6 +141,8 @@ HGLOBAL RenderHDROP(LPITEMIDLIST pidlRoot, LPITEMIDLIST * apidl, UINT cidl) DECL HGLOBAL RenderSHELLIDLIST (LPITEMIDLIST pidlRoot, LPITEMIDLIST * apidl, UINT cidl) DECLSPEC_HIDDEN; HGLOBAL RenderFILENAMEA (LPITEMIDLIST pidlRoot, LPITEMIDLIST * apidl, UINT cidl) DECLSPEC_HIDDEN; HGLOBAL RenderFILENAMEW (LPITEMIDLIST pidlRoot, LPITEMIDLIST * apidl, UINT cidl) DECLSPEC_HIDDEN; @@ -155,5 +146,5 @@ index 492f79f..29822b7 100644 /* Change Notification */ void InitChangeNotifications(void) DECLSPEC_HIDDEN; -- -2.7.1 +2.40.1 diff --git a/patches/shell32-Context_Menu/0007-shell32-Remove-source-files-when-using-cut-in-the-co.patch b/patches/shell32-Context_Menu/0007-shell32-Remove-source-files-when-using-cut-in-the-co.patch index 29d8689a..b3546b3b 100644 --- a/patches/shell32-Context_Menu/0007-shell32-Remove-source-files-when-using-cut-in-the-co.patch +++ b/patches/shell32-Context_Menu/0007-shell32-Remove-source-files-when-using-cut-in-the-co.patch @@ -31,10 +31,10 @@ index abee4c93a35..6a16aab2f25 100644 + + medium.tymed = TYMED_HGLOBAL; + medium.pUnkForRelease = NULL; -+ medium.u.hGlobal = GlobalAlloc(GHND|GMEM_SHARE, sizeof(DWORD)); -+ if (!medium.u.hGlobal) return; ++ medium.hGlobal = GlobalAlloc(GHND|GMEM_SHARE, sizeof(DWORD)); ++ if (!medium.hGlobal) return; + -+ effect = GlobalLock(medium.u.hGlobal); ++ effect = GlobalLock(medium.hGlobal); + if (!effect) + { + ReleaseStgMedium(&medium); @@ -64,7 +64,7 @@ index abee4c93a35..6a16aab2f25 100644 + + if (SUCCEEDED(IDataObject_GetData(dataobject, &formatetc, &medium))) + { -+ effect = GlobalLock(medium.u.hGlobal); ++ effect = GlobalLock(medium.hGlobal); + if (effect) + { + *value = *effect; diff --git a/patches/windows.networking.connectivity-new-dll/0003-windows.networking.connectivity-Add-stub-dll.patch b/patches/windows.networking.connectivity-new-dll/0003-windows.networking.connectivity-Add-stub-dll.patch index 6555ec24..0d338755 100644 --- a/patches/windows.networking.connectivity-new-dll/0003-windows.networking.connectivity-Add-stub-dll.patch +++ b/patches/windows.networking.connectivity-new-dll/0003-windows.networking.connectivity-Add-stub-dll.patch @@ -55,7 +55,7 @@ new file mode 100644 index 00000000000..96ff0ea5af2 --- /dev/null +++ b/dlls/windows.networking.connectivity/windows.networking.connectivity_main.c -@@ -0,0 +1,35 @@ +@@ -0,0 +1,26 @@ +#include + +#define COBJMACROS @@ -71,15 +71,6 @@ index 00000000000..96ff0ea5af2 + +WINE_DEFAULT_DEBUG_CHANNEL(network); + -+static const char *debugstr_hstring(HSTRING hstr) -+{ -+ const WCHAR *str; -+ UINT32 len; -+ if (hstr && !((ULONG_PTR)hstr >> 16)) return "(invalid)"; -+ str = WindowsGetStringRawBuffer(hstr, &len); -+ return wine_dbgstr_wn(str, len); -+} -+ +HRESULT WINAPI DllGetClassObject(REFCLSID clsid, REFIID riid, LPVOID *object) +{ + FIXME("clsid %s, riid %s, object %p stub!\n", debugstr_guid(clsid), debugstr_guid(riid), object); diff --git a/patches/windows.networking.connectivity-new-dll/0004-windows.networking.connectivity-Implement-IActivatio.patch b/patches/windows.networking.connectivity-new-dll/0004-windows.networking.connectivity-Implement-IActivatio.patch index c1cfda24..479d2741 100644 --- a/patches/windows.networking.connectivity-new-dll/0004-windows.networking.connectivity-Implement-IActivatio.patch +++ b/patches/windows.networking.connectivity-new-dll/0004-windows.networking.connectivity-Implement-IActivatio.patch @@ -1,8 +1,8 @@ -From 587e8baeef029940518223d13b754b4e6c0352cd Mon Sep 17 00:00:00 2001 +From 3f6ade7cf0bb0652b426ac20ef1c524f087966e4 Mon Sep 17 00:00:00 2001 From: Esdras Tarsis Date: Wed, 2 Sep 2020 23:53:28 -0300 -Subject: [PATCH 4/8] windows.networking.connectivity: Implement - IActivationFactory stubs. +Subject: [PATCH] windows.networking.connectivity: Implement IActivationFactory + stubs. v2: Add Proper QueryInterface @@ -12,12 +12,12 @@ Fixed Initial Reference Count value. 1 file changed, 101 insertions(+), 3 deletions(-) diff --git a/dlls/windows.networking.connectivity/windows.networking.connectivity_main.c b/dlls/windows.networking.connectivity/windows.networking.connectivity_main.c -index 96ff0ea5af2..2463cc2c93c 100644 +index b6d4561c493..219170366be 100644 --- a/dlls/windows.networking.connectivity/windows.networking.connectivity_main.c +++ b/dlls/windows.networking.connectivity/windows.networking.connectivity_main.c -@@ -22,6 +22,102 @@ static const char *debugstr_hstring(HSTRING hstr) - return wine_dbgstr_wn(str, len); - } +@@ -13,6 +13,102 @@ + + WINE_DEFAULT_DEBUG_CHANNEL(network); +struct windows_networking_connectivity +{ @@ -118,7 +118,7 @@ index 96ff0ea5af2..2463cc2c93c 100644 HRESULT WINAPI DllGetClassObject(REFCLSID clsid, REFIID riid, LPVOID *object) { FIXME("clsid %s, riid %s, object %p stub!\n", debugstr_guid(clsid), debugstr_guid(riid), object); -@@ -30,6 +126,8 @@ HRESULT WINAPI DllGetClassObject(REFCLSID clsid, REFIID riid, LPVOID *object) +@@ -21,6 +117,8 @@ HRESULT WINAPI DllGetClassObject(REFCLSID clsid, REFIID riid, LPVOID *object) HRESULT WINAPI DllGetActivationFactory(HSTRING classid, IActivationFactory **factory) { @@ -132,5 +132,5 @@ index 96ff0ea5af2..2463cc2c93c 100644 + return S_OK; +} -- -2.30.2 +2.40.1 diff --git a/staging/upstream-commit b/staging/upstream-commit index 4ba66ac0..6598d08e 100644 --- a/staging/upstream-commit +++ b/staging/upstream-commit @@ -1 +1 @@ -3d28f9d362e6d9871747231b210c559536bb6dd4 +f4a8ad89d43646a8d109da5747dfb1a92a6d8cd1