summaryrefslogtreecommitdiff
path: root/indra/llrender
diff options
context:
space:
mode:
authorcallum <none@none>2009-12-09 14:56:48 -0800
committercallum <none@none>2009-12-09 14:56:48 -0800
commita97479f41bae05ff08b3598a9497be9be3ee371d (patch)
tree860b0e365bc24fb056030622bdb04574e6f46ba3 /indra/llrender
parentdc3cad90c1cd4490d8035832138579f9711f8549 (diff)
parent874f53230dbe40e599e8903fae87a60816508fd6 (diff)
Merge with head
Diffstat (limited to 'indra/llrender')
-rw-r--r--indra/llrender/llfontgl.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/indra/llrender/llfontgl.cpp b/indra/llrender/llfontgl.cpp
index 9ba0cfc6b8..a28ffbfdc0 100644
--- a/indra/llrender/llfontgl.cpp
+++ b/indra/llrender/llfontgl.cpp
@@ -446,7 +446,9 @@ F32 LLFontGL::getWidthF32(const llwchar* wchars, S32 begin_offset, S32 max_chars
// for the last character we want to measure the greater of its width and xadvance values
// so keep track of the difference between these values for the each character we measure
// so we can fix things up at the end
- width_padding = llmax(0.f, (F32)fgi->mWidth - advance);
+ width_padding = llmax( 0.f, // always use positive padding amount
+ width_padding - advance, // previous padding left over after advance of current character
+ (F32)(fgi->mWidth + fgi->mXBearing) - advance); // difference between width of this character and advance to next character
cur_x += advance;
llwchar next_char = wchars[i+1];