mirror of
https://github.com/RPCS3/rpcs3.git
synced 2024-11-22 02:32:36 +01:00
Always launch rpcs3.exe on restart
This commit is contained in:
parent
f33373ca1b
commit
f36686b1a7
@ -18,7 +18,7 @@
|
|||||||
std::string wchar_to_utf8(wchar_t *src)
|
std::string wchar_to_utf8(wchar_t *src)
|
||||||
{
|
{
|
||||||
std::string utf8_string;
|
std::string utf8_string;
|
||||||
auto tmp_size = WideCharToMultiByte(CP_UTF8, 0, src, -1, nullptr, 0, nullptr, nullptr);
|
const auto tmp_size = WideCharToMultiByte(CP_UTF8, 0, src, -1, nullptr, 0, nullptr, nullptr);
|
||||||
utf8_string.resize(tmp_size);
|
utf8_string.resize(tmp_size);
|
||||||
WideCharToMultiByte(CP_UTF8, 0, src, -1, utf8_string.data(), tmp_size, nullptr, nullptr);
|
WideCharToMultiByte(CP_UTF8, 0, src, -1, utf8_string.data(), tmp_size, nullptr, nullptr);
|
||||||
return utf8_string;
|
return utf8_string;
|
||||||
@ -47,7 +47,7 @@ std::string utf8_path_to_ansi_path(const std::string& src)
|
|||||||
std::wstring buf_wide;
|
std::wstring buf_wide;
|
||||||
|
|
||||||
// Converts the utf-8 path to wide char
|
// Converts the utf-8 path to wide char
|
||||||
auto tmp_size = MultiByteToWideChar(CP_UTF8, 0, src.c_str(), -1, nullptr, 0);
|
const auto tmp_size = MultiByteToWideChar(CP_UTF8, 0, src.c_str(), -1, nullptr, 0);
|
||||||
buf_wide.resize(tmp_size);
|
buf_wide.resize(tmp_size);
|
||||||
MultiByteToWideChar(CP_UTF8, 0, src.c_str(), -1, buf_wide.data(), tmp_size);
|
MultiByteToWideChar(CP_UTF8, 0, src.c_str(), -1, buf_wide.data(), tmp_size);
|
||||||
|
|
||||||
|
@ -333,8 +333,13 @@ bool update_manager::handle_rpcs3()
|
|||||||
|
|
||||||
#ifdef _WIN32
|
#ifdef _WIN32
|
||||||
// Get executable path
|
// Get executable path
|
||||||
wchar_t orig_path[32767];
|
const std::string orig_path = Emulator::GetExeDir() + "rpcs3.exe";
|
||||||
GetModuleFileNameW(nullptr, orig_path, sizeof(orig_path) / 2);
|
|
||||||
|
std::wstring wchar_orig_path;
|
||||||
|
const auto tmp_size = MultiByteToWideChar(CP_UTF8, 0, orig_path.c_str(), -1, nullptr, 0);
|
||||||
|
wchar_orig_path.resize(tmp_size);
|
||||||
|
MultiByteToWideChar(CP_UTF8, 0, orig_path.c_str(), -1, wchar_orig_path.data(), tmp_size);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef __linux__
|
#ifdef __linux__
|
||||||
@ -596,7 +601,7 @@ bool update_manager::handle_rpcs3()
|
|||||||
QMessageBox::information(m_parent, tr("Auto-updater"), tr("Update successful!"));
|
QMessageBox::information(m_parent, tr("Auto-updater"), tr("Update successful!"));
|
||||||
|
|
||||||
#ifdef _WIN32
|
#ifdef _WIN32
|
||||||
const int ret = _wexecl(orig_path, orig_path, L"--updating", nullptr);
|
const int ret = _wexecl(wchar_orig_path.data(), wchar_orig_path.data(), L"--updating", nullptr);
|
||||||
#else
|
#else
|
||||||
const int ret = execl(replace_path.c_str(), replace_path.c_str(), "--updating", nullptr);
|
const int ret = execl(replace_path.c_str(), replace_path.c_str(), "--updating", nullptr);
|
||||||
#endif
|
#endif
|
||||||
|
Loading…
Reference in New Issue
Block a user