Honour the VNLP_COPYIFEXISTS flag when doing a copy operation.
This commit is contained in:
parent
c678b41524
commit
283a7ff8d1
|
@ -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;
|
||||
|
|
Loading…
Reference in New Issue