summaryrefslogtreecommitdiff
path: root/indra/llcommon/llstring.h
diff options
context:
space:
mode:
authorNat Goodspeed <nat@lindenlab.com>2018-12-11 20:48:20 -0500
committerNat Goodspeed <nat@lindenlab.com>2018-12-11 20:48:20 -0500
commit4e894eb2a7ed6651c54890cd20106bfacd61ef0a (patch)
treea1464528bfb90c5b35c5545e135217d947be21e2 /indra/llcommon/llstring.h
parentbb4a649b9c324e7989de6e59398c85e80fe2acc7 (diff)
SL-10153: Improve ll_convert_string_to_wide() and its converse.
Instead of returning a wchar_t* and requiring the caller to delete it later, return a std::basic_string<wchar_t> that's self-cleaning. If the caller wants a wchar_t*, s/he can call c_str() on the returned string. Default the code_page parameter to CP_UTF8, since we try to be really consistent about using UTF-8 encoding for all our internal std::strings.
Diffstat (limited to 'indra/llcommon/llstring.h')
-rw-r--r--indra/llcommon/llstring.h10
1 files changed, 6 insertions, 4 deletions
diff --git a/indra/llcommon/llstring.h b/indra/llcommon/llstring.h
index 68ee9db46b..7c3e9f952d 100644
--- a/indra/llcommon/llstring.h
+++ b/indra/llcommon/llstring.h
@@ -635,16 +635,18 @@ using snprintf_hack::snprintf;
* This replaces the unsafe W2A macro from ATL.
*/
LL_COMMON_API std::string ll_convert_wide_to_string(const wchar_t* in, unsigned int code_page);
+LL_COMMON_API std::string ll_convert_wide_to_string(const wchar_t* in); // default CP_UTF8
/**
* Converts a string to wide string.
- *
- * It will allocate memory for result string with "new []". Don't forget to release it with "delete []".
*/
-LL_COMMON_API wchar_t* ll_convert_string_to_wide(const std::string& in, unsigned int code_page);
+LL_COMMON_API std::basic_string<wchar_t> ll_convert_string_to_wide(const std::string& in,
+ unsigned int code_page);
+LL_COMMON_API std::basic_string<wchar_t> ll_convert_string_to_wide(const std::string& in);
+ // default CP_UTF8
/**
- * Converts incoming string into urf8 string
+ * Converts incoming string into utf8 string
*
*/
LL_COMMON_API std::string ll_convert_string_to_utf8_string(const std::string& in);