summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--client/windows/red_window.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/client/windows/red_window.cpp b/client/windows/red_window.cpp
index 8248aeec..6d8a70d8 100644
--- a/client/windows/red_window.cpp
+++ b/client/windows/red_window.cpp
@@ -448,7 +448,14 @@ RedWindow::~RedWindow()
void RedWindow::set_title(std::string& title)
{
- SetWindowText(_win, title.c_str());
+ int len = MultiByteToWideChar(CP_UTF8, 0, title.c_str(), title.length(), NULL, 0) + 1;
+ WCHAR* wtitle = new WCHAR[len * sizeof(WCHAR)];
+
+ if (wtitle && MultiByteToWideChar(CP_UTF8, 0, title.c_str(), title.length(), wtitle, len)) {
+ wtitle[len - 1] = L'\0';
+ SetWindowText(_win, wtitle);
+ }
+ delete []wtitle;
}
void RedWindow::set_icon(Icon* icon)