From 01f01c04263bae7f66e191976f45b5e03487a935 Mon Sep 17 00:00:00 2001 From: Tobias Weimer Date: Fri, 15 Apr 2016 18:29:35 +0000 Subject: PluginUpdater: - Fixed updating git-svn-id: http://svn.miranda-ng.org/main/trunk@16666 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c --- plugins/PluginUpdater/src/DlgUpdate.cpp | 18 ++++++++---------- plugins/PluginUpdater/src/stdafx.h | 8 ++++++++ 2 files changed, 16 insertions(+), 10 deletions(-) diff --git a/plugins/PluginUpdater/src/DlgUpdate.cpp b/plugins/PluginUpdater/src/DlgUpdate.cpp index 701aed3927..542f5fd9b2 100644 --- a/plugins/PluginUpdater/src/DlgUpdate.cpp +++ b/plugins/PluginUpdater/src/DlgUpdate.cpp @@ -567,6 +567,8 @@ static renameTable[] = { _T("WART-*.exe"), NULL }, }; +// Checks if file needs to be renamed and copies it in pNewName +// Returns true if smth. was copied static bool CheckFileRename(const TCHAR *ptszOldName, TCHAR *pNewName) { for (int i = 0; i < _countof(renameTable); i++) { @@ -627,16 +629,12 @@ static int ScanFolder(const TCHAR *tszFolder, size_t cbBaseLen, const TCHAR *tsz else if (isValidExtension(ffd.cFileName)) { // calculate the current file's relative name and store it into tszNewName TCHAR tszNewName[MAX_PATH]; - if (!CheckFileRename(ffd.cFileName, tszNewName)) { - if (level == 0) { - if (opts.bChangePlatform) { - if (!mir_tstrcmpi(ffd.cFileName, _T("miranda32.exe"))) - _tcsncpy_s(tszNewName, _T("miranda64.exe"), _TRUNCATE); - if (!mir_tstrcmpi(ffd.cFileName, _T("miranda64.exe"))) - _tcsncpy_s(tszNewName, _T("miranda32.exe"), _TRUNCATE); - } - _tcsncpy_s(tszNewName, ffd.cFileName, _TRUNCATE); - } + if (CheckFileRename(ffd.cFileName, tszNewName)) + Netlib_LogfT(hNetlibUser, _T("File %s will be renamed to %s."), ffd.cFileName, tszNewName); + else { + if (level == 0) + // Rename Miranda*.exe + _tcsncpy_s(tszNewName, opts.bChangePlatform && !mir_tstrcmp(ffd.cFileName, OLD_FILENAME) ? NEW_FILENAME : ffd.cFileName, _TRUNCATE); else mir_sntprintf(tszNewName, _T("%s\\%s"), tszFolder + cbBaseLen, ffd.cFileName); } diff --git a/plugins/PluginUpdater/src/stdafx.h b/plugins/PluginUpdater/src/stdafx.h index 10ffc6576a..da8f379c07 100644 --- a/plugins/PluginUpdater/src/stdafx.h +++ b/plugins/PluginUpdater/src/stdafx.h @@ -108,12 +108,20 @@ extern struct PlugOptions #define DEFAULT_UPDATE_URL_TRUNK "http://miranda-ng.org/distr/x%d" #define DEFAULT_UPDATE_URL_TRUNK_SYMBOLS "http://miranda-ng.org/distr/pdb_x%d" + +#define FILENAME_X64 _T("miranda64.exe") +#define FILENAME_X32 _T("miranda32.exe") + #ifdef _WIN64 #define DEFAULT_BITS 64 #define DEFAULT_OPP_BITS 32 + #define OLD_FILENAME FILENAME_X64 + #define NEW_FILENAME FILENAME_X32 #else #define DEFAULT_BITS 32 #define DEFAULT_OPP_BITS 64 + #define OLD_FILENAME FILENAME_X32 + #define NEW_FILENAME FILENAME_X64 #endif #define PLUGIN_INFO_URL _T("http://miranda-ng.org/p/%s") -- cgit v1.2.3