From da2aa165564e07359e5fe8a11bd15694bae021a6 Mon Sep 17 00:00:00 2001 From: Thomas Faber Date: Thu, 31 Oct 2013 16:46:14 +0000 Subject: [PATCH] [SHELL32] - Fix copy/paste in shell views when multiple files are selected. Patch by Huw Campbell CORE-4771 svn path=/trunk/; revision=60805 --- reactos/dll/win32/shell32/folders/desktop.cpp | 4 +++- reactos/dll/win32/shell32/folders/fs.cpp | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/reactos/dll/win32/shell32/folders/desktop.cpp b/reactos/dll/win32/shell32/folders/desktop.cpp index 14e1ec4dcfb..818b24b1818 100644 --- a/reactos/dll/win32/shell32/folders/desktop.cpp +++ b/reactos/dll/win32/shell32/folders/desktop.cpp @@ -1283,14 +1283,16 @@ HRESULT WINAPI CDesktopFolder::CopyItems(IShellFolder *pSFFrom, UINT cidl, LPCIT } op.pTo = szTargetPath; + op.fFlags = 0; } else { op.pTo = pszTargetList; + op.fFlags = FOF_MULTIDESTFILES; } op.hwnd = GetActiveWindow(); op.wFunc = FO_COPY; - op.fFlags = FOF_ALLOWUNDO | FOF_NOCONFIRMMKDIR; + op.fFlags |= FOF_ALLOWUNDO | FOF_NOCONFIRMMKDIR; res = SHFileOperationW(&op); diff --git a/reactos/dll/win32/shell32/folders/fs.cpp b/reactos/dll/win32/shell32/folders/fs.cpp index dfd5e2209cb..2e7939f05b8 100644 --- a/reactos/dll/win32/shell32/folders/fs.cpp +++ b/reactos/dll/win32/shell32/folders/fs.cpp @@ -1124,14 +1124,16 @@ HRESULT WINAPI CFSFolder::CopyItems(IShellFolder * pSFFrom, UINT cidl, } op.pTo = szTargetPath; + op.fFlags = 0; } else { op.pTo = pszTargetList; + op.fFlags = FOF_MULTIDESTFILES; } op.hwnd = GetActiveWindow(); op.wFunc = FO_COPY; - op.fFlags = FOF_ALLOWUNDO | FOF_NOCONFIRMMKDIR; + op.fFlags |= FOF_ALLOWUNDO | FOF_NOCONFIRMMKDIR; res = SHFileOperationW(&op);