[PATCH 5/7] winex11.drv: only fetch DND data when requested by the receiving application
Damjan Jovanovic
damjan.jov at gmail.com
Sun Apr 24 20:00:58 CDT 2016
We currently fetch all the DND data when the first XdndPosition message
arrives, and cache it for the duration of the drop. The spec does allows
this, but:
* it's not what Windows does.
* even on X11, the drag source can change the data during the drag, causing
the drop target to receive outdated data.
* clipboard formats can have side effects (ICCCM 2.6.3): "DELETE" can cause
data loss if requested during a move operation before the drop has
occured. Blindly requesting every data type could be dangerous.
Signed-off-by: Damjan Jovanovic <damjan.jov at gmail.com>
---
dlls/winex11.drv/clipboard.c | 12 ++
dlls/winex11.drv/x11drv.h | 1 +
dlls/winex11.drv/xdnd.c | 279 +++++++++++++++----------------------------
3 files changed, 107 insertions(+), 185 deletions(-)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0005-winex11.drv-only-fetch-DND-data-when-requested-by-the-.txt
Type: text/x-patch
Size: 17143 bytes
Desc: not available
URL: <http://www.winehq.org/pipermail/wine-patches/attachments/20160425/19a07d9f/attachment-0001.bin>
More information about the wine-patches
mailing list