summaryrefslogtreecommitdiff
path: root/indra/llui/lltexteditor.cpp
diff options
context:
space:
mode:
authorNyx Linden <nyx@lindenlab.com>2013-04-02 16:02:13 -0400
committerNyx Linden <nyx@lindenlab.com>2013-04-02 16:02:13 -0400
commit323a2f2235a52383bcfbae79bdce9e61ca808d2a (patch)
tree313d298add46edae3dadc1f3426b8fa68f9452fe /indra/llui/lltexteditor.cpp
parent557adcabb925acbcc79f39f76f7cb74b6202a8da (diff)
parent49731dd21dec5fb8b6e5781940bab5f5fa9600a2 (diff)
pulling in sunshine-stable to sunshine-internal.
Diffstat (limited to 'indra/llui/lltexteditor.cpp')
-rw-r--r--indra/llui/lltexteditor.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/indra/llui/lltexteditor.cpp b/indra/llui/lltexteditor.cpp
index 3dc1b99edb..834f213097 100644
--- a/indra/llui/lltexteditor.cpp
+++ b/indra/llui/lltexteditor.cpp
@@ -956,12 +956,18 @@ S32 LLTextEditor::insert(S32 pos, const LLWString &wstr, bool group_with_next_op
S32 LLTextEditor::remove(S32 pos, S32 length, bool group_with_next_op)
{
S32 end_pos = getEditableIndex(pos + length, true);
+ BOOL removedChar = FALSE;
segment_vec_t segments_to_remove;
// store text segments
getSegmentsInRange(segments_to_remove, pos, pos + length, false);
+
+ if(pos <= end_pos)
+ {
+ removedChar = execute( new TextCmdRemove( pos, group_with_next_op, end_pos - pos, segments_to_remove ) );
+ }
- return execute( new TextCmdRemove( pos, group_with_next_op, end_pos - pos, segments_to_remove ) );
+ return removedChar;
}
S32 LLTextEditor::overwriteChar(S32 pos, llwchar wc)