diff -r 3f2162768b29 doc/contributions.txt --- a/doc/contributions.txt Mon Dec 12 10:03:06 2011 -0500 +++ b/doc/contributions.txt Wed Dec 14 16:34:42 2011 -0500 @@ -159,6 +159,7 @@ VWR-12620 VWR-12789 SNOW-322 + STORM-1723 Alliez Mysterio Angus Boyd VWR-592 diff -r 3f2162768b29 indra/llrender/llfontgl.cpp --- a/indra/llrender/llfontgl.cpp Mon Dec 12 10:03:06 2011 -0500 +++ b/indra/llrender/llfontgl.cpp Wed Dec 14 16:34:42 2011 -0500 @@ -304,6 +304,18 @@ S32 next_bitmap_num = fgi->mBitmapNum; if (next_bitmap_num != bitmap_num) { + // Actually draw the queued glyphs before switching their texture; + // otherwise the queued glyphs will be taken from wrong textures. + if (glyph_count > 0) + { + gGL.begin(LLRender::QUADS); + { + gGL.vertexBatchPreTransformed(vertices, uvs, colors, glyph_count * 4); + } + gGL.end(); + glyph_count = 0; + } + bitmap_num = next_bitmap_num; LLImageGL *font_image = font_bitmap_cache->getImageGL(bitmap_num); gGL.getTexUnit(0)->bind(font_image);