diff --git a/client/app.C b/client/app.C index acf1877764..40a3413683 100644 --- a/client/app.C +++ b/client/app.C @@ -240,7 +240,7 @@ int ACTIVE_TASK::start(bool first_time) { printf("link %s to %s\n", file_path, link_path); } if (file_ref.copy_file) { - retval = boinc_copy(buf, link_path); + retval = boinc_copy(file_path, link_path); if (retval) { msg_printf(wup->project, MSG_ERROR, "Can't copy %s to %s", file_path, link_path); fclose(f); diff --git a/client/win/Stackwalker.cpp b/client/win/Stackwalker.cpp index d8ffcc0c68..25fc2072df 100755 --- a/client/win/Stackwalker.cpp +++ b/client/win/Stackwalker.cpp @@ -632,6 +632,7 @@ static void AllocHashInit(void) { // Returns the number of bytes, that are not freed (leaks) static ULONG AllocHashDeinit(void) { ULONG ulRet = 0; + return 0; bool bAppend = g_CallstackOutputType != ACOutput_XML; AllocCheckFileOpen(bAppend); // open global log-file diff --git a/lib/filesys.C b/lib/filesys.C index 0ce228760a..33fd16e4b2 100755 --- a/lib/filesys.C +++ b/lib/filesys.C @@ -326,7 +326,10 @@ int dir_size(char* dirpath, double& size) { int boinc_copy(char* orig, char* newf) { #ifdef _WIN32 - return !CopyFile(orig, newf, FALSE); + if(CopyFile(orig, newf, FALSE)) + return 0; + else + return GetLastError(); #else char cmd[256]; sprintf(cmd, "cp %s %s", orig, newf);