summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/gui/guiConfirmRegistration.cpp7
-rw-r--r--src/util/string.cpp2
2 files changed, 6 insertions, 3 deletions
diff --git a/src/gui/guiConfirmRegistration.cpp b/src/gui/guiConfirmRegistration.cpp
index 92ca94d42..fea9f5cda 100644
--- a/src/gui/guiConfirmRegistration.cpp
+++ b/src/gui/guiConfirmRegistration.cpp
@@ -99,9 +99,10 @@ void GUIConfirmRegistration::regenerateGui(v2u32 screensize)
snprintf(info_text_buf, sizeof(info_text_buf), info_text_template.c_str(),
address.c_str(), m_playername.c_str());
- gui::IGUIEditBox *e = new gui::intlGUIEditBox(
- utf8_to_wide_c(info_text_buf), true, Environment, this,
- ID_message, rect2, false, true);
+ wchar_t *info_text_buf_wide = utf8_to_wide_c(info_text_buf);
+ gui::IGUIEditBox *e = new gui::intlGUIEditBox(info_text_buf_wide, true,
+ Environment, this, ID_message, rect2, false, true);
+ delete[] info_text_buf_wide;
e->drop();
e->setMultiLine(true);
e->setWordWrap(true);
diff --git a/src/util/string.cpp b/src/util/string.cpp
index 25f573420..388e8d293 100644
--- a/src/util/string.cpp
+++ b/src/util/string.cpp
@@ -167,6 +167,8 @@ std::string wide_to_utf8(const std::wstring &input)
#endif // _WIN32
+// You must free the returned string!
+// The returned string is allocated using new
wchar_t *utf8_to_wide_c(const char *str)
{
std::wstring ret = utf8_to_wide(std::string(str));