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);
|
typedef int (CALLBACK *VCPENUMPROC)(LPVIRTNODE lpvn, LPARAM lparamRef);
|
||||||
|
|
||||||
RETERR16 WINAPI VcpOpen16(VIFPROC vifproc, LPARAM lparamMsgRef);
|
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(
|
RETERR16 WINAPI VcpQueueCopy16(
|
||||||
LPCSTR lpszSrcFileName, LPCSTR lpszDstFileName,
|
LPCSTR lpszSrcFileName, LPCSTR lpszDstFileName,
|
||||||
LPCSTR lpszSrcDir, LPCSTR lpszDstDir,
|
LPCSTR lpszSrcDir, LPCSTR lpszDstDir,
|
||||||
|
|
|
@ -467,7 +467,8 @@ RETERR16 VCP_CopyFiles(void)
|
||||||
/* FIXME: need to do the file copy in small chunks for notifications */
|
/* FIXME: need to do the file copy in small chunks for notifications */
|
||||||
TRACE("copying '%s' to '%s'\n", fn_src, fn_dst);
|
TRACE("copying '%s' to '%s'\n", fn_src, fn_dst);
|
||||||
/* perform the file copy */
|
/* 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);
|
ERR("error copying, src: %s -> dst: %s\n", fn_src, fn_dst);
|
||||||
res = ERR_VCP_IOFAIL;
|
res = ERR_VCP_IOFAIL;
|
||||||
|
|
Loading…
Reference in New Issue