From 19cee75e48b7a21c505a9fe5b7d9c2e6fe2e89a1 Mon Sep 17 00:00:00 2001 From: "chunmao.guo" Date: Wed, 1 Nov 2023 16:08:09 +0800 Subject: [PATCH] FIX: [STUDIO-4946] use utf8 path to create sub process Change-Id: I5873c114e8cd36978a7d50bf13c3aa7bf8b740ca Jira: STUDIO-4946 --- src/slic3r/GUI/MediaPlayCtrl.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/slic3r/GUI/MediaPlayCtrl.cpp b/src/slic3r/GUI/MediaPlayCtrl.cpp index 3c92517aa..b0717345c 100644 --- a/src/slic3r/GUI/MediaPlayCtrl.cpp +++ b/src/slic3r/GUI/MediaPlayCtrl.cpp @@ -9,6 +9,7 @@ #include "DownloadProgressDialog.hpp" #include +#include #undef pid_t #include #ifdef __WIN32__ @@ -631,7 +632,9 @@ bool MediaPlayCtrl::start_stream_service(bool *need_install) std::string file_dll2 = data_dir() + "/plugins/BambuSource.dll"; if (!boost::filesystem::exists(file_dll) || boost::filesystem::last_write_time(file_dll) != boost::filesystem::last_write_time(file_dll2)) boost::filesystem::copy_file(file_dll2, file_dll, boost::filesystem::copy_option::overwrite_if_exists); - boost::process::child process_source(file_source, file_url2.data().AsInternal(), boost::process::start_dir(start_dir), boost::process::windows::create_no_window, + static std::locale tmp = std::locale(std::locale(), new boost::nowide::utf8_codecvt()); + boost::process::imbue(tmp); + boost::process::child process_source(file_source, into_u8(file_url2), boost::process::start_dir(start_dir), boost::process::windows::create_no_window, boost::process::std_out > intermediate, boost::process::limit_handles); boost::process::child process_ffmpeg(file_ffmpeg, configss, boost::process::windows::create_no_window, boost::process::std_in < intermediate, boost::process::limit_handles);