Update local path. Optimize audio interruption.
This commit is contained in:
1 parent
309fe46a4f
commit
b159d8c9ab
15 files changed
+246
-62
No files matched your search
@@ -1,7 +1,5 @@
|
||||
#include "common_utils.h"
|
||||
#include <boost/locale.hpp>
|
||||
#include "global/globals.h"
|
||||
#include <shlobj.h>
|
||||
#include <memory>
|
||||
|
||||
using namespace std;
|
||||
@@ -72,34 +70,12 @@ namespace CommonUtils
|
||||
{
|
||||
string get_local_appdata_path()
|
||||
{
|
||||
char *localAppDataDir = nullptr;
|
||||
std::string localAppDataDirStr;
|
||||
errno_t err = _dupenv_s(&localAppDataDir, nullptr, "LOCALAPPDATA");
|
||||
if (err == 0 && localAppDataDir != nullptr)
|
||||
{
|
||||
localAppDataDirStr = std::string(localAppDataDir);
|
||||
}
|
||||
std::unique_ptr<char, decltype(&free)> dirPtr(localAppDataDir, free);
|
||||
if (!localAppDataDirStr.empty())
|
||||
{
|
||||
return localAppDataDirStr;
|
||||
}
|
||||
|
||||
// ShellExecute / early logon can occasionally leave LOCALAPPDATA unset while
|
||||
// the known-folder API still resolves the profile path correctly.
|
||||
PWSTR known_path = nullptr;
|
||||
if (SUCCEEDED(SHGetKnownFolderPath(FOLDERID_LocalAppData, KF_FLAG_DEFAULT, nullptr, &known_path)) &&
|
||||
known_path)
|
||||
{
|
||||
localAppDataDirStr = wstring_to_string(known_path);
|
||||
CoTaskMemFree(known_path);
|
||||
}
|
||||
return localAppDataDirStr;
|
||||
return wstring_to_string(get_local_appdata_path_w());
|
||||
}
|
||||
|
||||
string get_ime_data_path()
|
||||
{
|
||||
return get_local_appdata_path() + "\\" + wstring_to_string(GlobalIme::AppName);
|
||||
return wstring_to_string(get_ime_data_path_w());
|
||||
}
|
||||
|
||||
string get_username()
|
||||
|
||||
Reference in new issue
Block a user