Module: wine Branch: master Commit: 99d5b75c7d943270e93c5362ba1ecce0d99e20ed URL: http://source.winehq.org/git/wine.git/?a=commit;h=99d5b75c7d943270e93c5362ba...
Author: Alexandre Julliard julliard@winehq.org Date: Tue Aug 23 17:59:36 2016 +0900
winex11: Don't disallow replacing unowned formats.
Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/user32/tests/clipboard.c | 1 - dlls/winex11.drv/clipboard.c | 21 ++------------------- 2 files changed, 2 insertions(+), 20 deletions(-)
diff --git a/dlls/user32/tests/clipboard.c b/dlls/user32/tests/clipboard.c index ddd8d1a..549a625 100644 --- a/dlls/user32/tests/clipboard.c +++ b/dlls/user32/tests/clipboard.c @@ -93,7 +93,6 @@ static void set_clipboard_data_process( int arg ) todo_wine_if( arg == 1 || arg == 3 ) ok( IsClipboardFormatAvailable( CF_WAVE ), "process %u: CF_WAVE not available\n", arg ); ret = SetClipboardData( CF_WAVE, GlobalAlloc( GMEM_DDESHARE | GMEM_ZEROINIT, 100 )); - todo_wine_if( arg == 2 || arg == 4 ) ok( ret != 0, "process %u: SetClipboardData failed err %u\n", arg, GetLastError() ); } else diff --git a/dlls/winex11.drv/clipboard.c b/dlls/winex11.drv/clipboard.c index b7c89cb..af8fa37 100644 --- a/dlls/winex11.drv/clipboard.c +++ b/dlls/winex11.drv/clipboard.c @@ -3013,26 +3013,9 @@ void CDECL X11DRV_EmptyClipboard(void) */ BOOL CDECL X11DRV_SetClipboardData(UINT wFormat, HANDLE hData, BOOL owner) { - DWORD flags = 0; - BOOL bResult = TRUE; + if (!owner) X11DRV_CLIPBOARD_UpdateCache();
- /* If it's not owned, data can only be set if the format data is not already owned */ - if (!owner) - { - LPWINE_CLIPDATA lpRender; - - X11DRV_CLIPBOARD_UpdateCache(); - - if (((lpRender = X11DRV_CLIPBOARD_LookupData(wFormat)) && - !(lpRender->wFlags & CF_FLAG_UNOWNED))) - bResult = FALSE; - else - flags = CF_FLAG_UNOWNED; - } - - bResult &= X11DRV_CLIPBOARD_InsertClipboardData(wFormat, hData, flags, NULL, TRUE); - - return bResult; + return X11DRV_CLIPBOARD_InsertClipboardData(wFormat, hData, 0, NULL, TRUE); }