[PATCH 0/1] MR8511: ole32: Restore cursor in DoDragDrop.
The cursor is changed in give_feedback() but is not restored back. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/8511
From: Roman Pišl <rpisl(a)seznam.cz> --- dlls/ole32/ole2.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/dlls/ole32/ole2.c b/dlls/ole32/ole2.c index f4672b704ee..b37b5b0e387 100644 --- a/dlls/ole32/ole2.c +++ b/dlls/ole32/ole2.c @@ -733,6 +733,7 @@ HRESULT WINAPI DoDragDrop ( TrackerWindowInfo trackerInfo; HWND hwndTrackWindow; MSG msg; + HCURSOR cursor; TRACE("%p, %p, %#lx, %p.\n", pDataObject, pDropSource, dwOKEffect, pdwEffect); @@ -767,6 +768,9 @@ HRESULT WINAPI DoDragDrop ( msg.message = 0; + /* save cursor */ + cursor = GetCursor(); + /* * Pump messages. All mouse input should go to the capture window. */ @@ -813,6 +817,9 @@ HRESULT WINAPI DoDragDrop ( */ DestroyWindow(hwndTrackWindow); + /* restore cursor */ + SetCursor(cursor); + return trackerInfo.returnValue; } -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/8511
Could we add a test for this? We have some existing tests, so it shouldn't be too hard to add this. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/8511#note_109272
participants (2)
-
Huw Davies (@huw) -
Roman Pišl