From 254c4ff94589346623a9617eee1ae02505b3423f Mon Sep 17 00:00:00 2001 From: "(no author)" <(no author)@4f64403b-2f21-0410-a795-97e2b3489a10> Date: Mon, 23 Aug 2010 03:57:45 +0000 Subject: Added support for Miranda 0.9 profile path git-svn-id: https://server.scottellis.com.au/svn/mim_plugs@528 4f64403b-2f21-0410-a795-97e2b3489a10 --- updater/extern.cpp | 30 +++++++++++++++++++----------- 1 file changed, 19 insertions(+), 11 deletions(-) (limited to 'updater/extern.cpp') diff --git a/updater/extern.cpp b/updater/extern.cpp index 7c0feda..4e73301 100644 --- a/updater/extern.cpp +++ b/updater/extern.cpp @@ -28,21 +28,29 @@ int ExternProcess(bool restart) { return 1; } - char db_name[100], db_path[MAX_PATH]; + TCHAR db_pathT[MAX_PATH]; - // Get Miranda exe path and profile - CallService(MS_DB_GETPROFILENAME, SIZEOF(db_name), (WPARAM)(char*) db_name); - CallService(MS_DB_GETPROFILEPATH, SIZEOF(db_path), (WPARAM)(char*) db_path); + if (CallService(MS_SYSTEM_GETVERSION, 0, 0) >= PLUGIN_MAKE_VERSION(0,9,0,12)) + { + TCHAR *p = Utils_ReplaceVarsT(_T("%miranda_profile%\\%miranda_profilename%\\%miranda_profilename%.dat")); + mir_sntprintf(db_pathT, SIZEOF(db_pathT), _T("%s"), p); + mir_free(p); + } + else + { + char db_name[100], db_path[MAX_PATH]; + + // Get Miranda exe path and profile + CallService(MS_DB_GETPROFILENAME, SIZEOF(db_name), (WPARAM)db_name); + CallService(MS_DB_GETPROFILEPATH, SIZEOF(db_path), (WPARAM)db_path); - TCHAR db_pathT[MAX_PATH], *t1, *t2; - mir_sntprintf(db_pathT, SIZEOF(db_pathT), _T("%s\\%s"), (t1=mir_a2t(db_path)), (t2=mir_a2t(db_name))); - mir_free(t1); mir_free(t2); + TCHAR *t1, *t2; + mir_sntprintf(db_pathT, SIZEOF(db_pathT), _T("%s\\%s"), (t1=mir_a2t(db_path)), (t2=mir_a2t(db_name))); + mir_free(t1); mir_free(t2); + } // get plugin folder - REPLACEVARSDATA dat = {0}; - dat.cbSize = sizeof(dat); - dat.dwFlags = RVF_TCHAR; - TCHAR* plugins_folder = (TCHAR*)CallService(MS_UTILS_REPLACEVARS, (WPARAM)_T("%miranda_path%\\Plugins"), (LPARAM)&dat); + TCHAR* plugins_folder = Utils_ReplaceVarsT(_T("%miranda_path%\\Plugins")); TCHAR mir_exe[MAX_PATH]; GetModuleFileName(NULL, mir_exe, SIZEOF(mir_exe)); -- cgit v1.2.3