Damjan Jovanovic : winex11.drv: Ignore .dwAspect in FORMATETC during XDnD.

Alexandre Julliard julliard at winehq.org
Mon Apr 20 15:01:55 CDT 2020


Module: wine
Branch: oldstable
Commit: b3f5764fb8ce77b11fed32d20a039b6b47e75ce0
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=b3f5764fb8ce77b11fed32d20a039b6b47e75ce0

Author: Damjan Jovanovic <damjan.jov at gmail.com>
Date:   Thu Dec 26 14:30:07 2019 +0200

winex11.drv: Ignore .dwAspect in FORMATETC during XDnD.

Some applications pass FORMATETC.dwAspect=0 to
IDataObject_[Query]GetData() during drag and drop, which
is not a valid DVASPECT_* value. Tests show that Windows
Explorer completely ignores .dwAspect for CF_HDROP when
it is the drag source, treating all values as
DVASPECT_CONTENT instead. Do the same.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=43368
Signed-off-by: Damjan Jovanovic <damjan.jov at gmail.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
(cherry picked from commit 523fb9496c7758be9626d3d5b6a07014f867f640)
Signed-off-by: Michael Stefaniuc <mstefani at winehq.org>

---

 dlls/winex11.drv/xdnd.c | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/dlls/winex11.drv/xdnd.c b/dlls/winex11.drv/xdnd.c
index 2ab28e43bf..80b367a4bb 100644
--- a/dlls/winex11.drv/xdnd.c
+++ b/dlls/winex11.drv/xdnd.c
@@ -786,11 +786,9 @@ static HRESULT WINAPI XDNDDATAOBJECT_QueryGetData(IDataObject *dataObject,
         FIXME("only HGLOBAL medium types supported right now\n");
         return DV_E_TYMED;
     }
-    if (formatEtc->dwAspect != DVASPECT_CONTENT)
-    {
-        FIXME("only the content aspect is supported right now\n");
-        return E_NOTIMPL;
-    }
+    /* Windows Explorer ignores .dwAspect and .lindex for CF_HDROP,
+     * and we have no way to implement them on XDnD anyway, so ignore them too.
+     */
 
     LIST_FOR_EACH_ENTRY(current, &xdndData, XDNDDATA, entry)
     {




More information about the wine-cvs mailing list