summaryrefslogtreecommitdiff
path: root/indra/newview/llautoreplace.cpp
diff options
context:
space:
mode:
authorAndreyL ProductEngine <alihatskiy@productengine.com>2019-05-08 21:41:56 +0300
committerAndreyL ProductEngine <alihatskiy@productengine.com>2019-05-08 21:41:56 +0300
commit3175525950ecf568eb75a6cb4f9283ee32dcd9a5 (patch)
treee7e28987b5618ffcf081a3ef0bdbb9717ccd1d6c /indra/newview/llautoreplace.cpp
parent9d2cb130e35fcbab98d5e7cb4d0d26ca6a16503b (diff)
parent34322f8f37380df868703051230f2a4109602b3f (diff)
Merged in lindenlab/viewer-release
Diffstat (limited to 'indra/newview/llautoreplace.cpp')
-rw-r--r--indra/newview/llautoreplace.cpp7
1 files changed, 3 insertions, 4 deletions
diff --git a/indra/newview/llautoreplace.cpp b/indra/newview/llautoreplace.cpp
index dd9354fe3a..0516520c56 100644
--- a/indra/newview/llautoreplace.cpp
+++ b/indra/newview/llautoreplace.cpp
@@ -68,8 +68,8 @@ void LLAutoReplace::autoreplaceCallback(S32& replacement_start, S32& replacement
word_start--; // walk word_start back to the beginning of the word
}
LL_DEBUGS("AutoReplace") << "word_start: " << word_start << " word_end: " << word_end << LL_ENDL;
- std::string str_text = std::string(input_text.begin(), input_text.end());
- std::string last_word = str_text.substr(word_start, word_end - word_start + 1);
+ LLWString old_string = input_text.substr(word_start, word_end - word_start + 1);
+ std::string last_word = wstring_to_utf8str(old_string);
std::string replacement_word(mSettings.replaceWord(last_word));
if (replacement_word != last_word)
@@ -79,9 +79,8 @@ void LLAutoReplace::autoreplaceCallback(S32& replacement_start, S32& replacement
{
// return the replacement string
replacement_start = word_start;
- replacement_length = last_word.length();
+ replacement_length = word_end - word_start + 1;
replacement_string = utf8str_to_wstring(replacement_word);
- LLWString old_string = utf8str_to_wstring(last_word);
S32 size_change = replacement_string.size() - old_string.size();
cursor_pos += size_change;
}