diff options
author | Palmer <palmer@lindenlab.com> | 2009-10-28 15:56:43 -0700 |
---|---|---|
committer | Palmer <palmer@lindenlab.com> | 2009-10-28 15:56:43 -0700 |
commit | 9cfcb53d1904d868e1e3f640baf794aba9ffbb2a (patch) | |
tree | f3b43628c6af64e10eac4e2ef850f219f7dc6271 /indra/llui | |
parent | 0be38781829650a4baa2d22faa5feb88242fdfdc (diff) | |
parent | 480a1db3546efbf2a40a473d33b689ee5b2e4eb5 (diff) |
Accidently used pull and update instead of fetch. No code changed.
Diffstat (limited to 'indra/llui')
-rw-r--r-- | indra/llui/lltextbase.cpp | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/indra/llui/lltextbase.cpp b/indra/llui/lltextbase.cpp index 653505a12e..2b1d677ffb 100644 --- a/indra/llui/lltextbase.cpp +++ b/indra/llui/lltextbase.cpp @@ -419,9 +419,6 @@ void LLTextBase::drawCursor() return; } - if (!mTextRect.contains(cursor_rect)) - return; - // Draw the cursor // (Flash the cursor every half second starting a fixed time after the last keystroke) F32 elapsed = mCursorBlinkTimer.getElapsedTimeF32(); @@ -2381,7 +2378,6 @@ S32 LLNormalTextSegment::getNumChars(S32 num_pixels, S32 segment_offset, S32 lin { if (text[last_char] == '\n') { - last_char++; break; } } @@ -2401,9 +2397,14 @@ S32 LLNormalTextSegment::getNumChars(S32 num_pixels, S32 segment_offset, S32 lin // If at the beginning of a line, and a single character won't fit, draw it anyway num_chars = 1; } - if (mStart + segment_offset + num_chars == mEditor.getLength()) + + // include *either* the EOF or newline character in this run of text + // but not both + S32 last_char_in_run = mStart + segment_offset + num_chars; + // check length first to avoid indexing off end of string + if (last_char_in_run >= mEditor.getLength() + || text[last_char_in_run] == '\n') { - // include terminating NULL num_chars++; } return num_chars; |