Commit 283a7ff8 authored by Andreas Mohr's avatar Andreas Mohr Committed by Alexandre Julliard

Honour the VNLP_COPYIFEXISTS flag when doing a copy operation.

parent c678b415
......@@ -360,6 +360,20 @@ typedef LRESULT (CALLBACK *VIFPROC)(LPVOID lpvObj, UINT16 uMsg, WPARAM wParam, L
typedef int (CALLBACK *VCPENUMPROC)(LPVIRTNODE lpvn, LPARAM lparamRef);
RETERR16 WINAPI VcpOpen16(VIFPROC vifproc, LPARAM lparamMsgRef);
/* VcpQueueCopy flags */
#define VNLP_SYSCRITICAL 0x0001
#define VNLP_SETUPCRITICAL 0x0002
#define VNLP_NOVERCHECK 0x0004
#define VNLP_FORCETEMP 0x0008
#define VNLP_IFEXISTS 0x0010
#define VNLP_KEEPNEWER 0x0020
#define VNLP_PATCHIFEXIST 0x0040
#define VNLP_NOPATCH 0x0080
#define VNLP_CATALOGCERT 0x0100
#define VNLP_NEEDCERTIFY 0x0200
#define VNLP_COPYIFEXISTS 0x0400
RETERR16 WINAPI VcpQueueCopy16(
LPCSTR lpszSrcFileName, LPCSTR lpszDstFileName,
LPCSTR lpszSrcDir, LPCSTR lpszDstDir,
......
......@@ -467,7 +467,8 @@ RETERR16 VCP_CopyFiles(void)
/* FIXME: need to do the file copy in small chunks for notifications */
TRACE("copying '%s' to '%s'\n", fn_src, fn_dst);
/* perform the file copy */
if (!(CopyFileA(fn_src, fn_dst, TRUE)))
if (!(CopyFileA(fn_src, fn_dst,
(lpvn->fl & VNLP_COPYIFEXISTS) ? FALSE : TRUE )))
{
ERR("error copying, src: %s -> dst: %s\n", fn_src, fn_dst);
res = ERR_VCP_IOFAIL;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment