Jason Green <jav...@gmail.com> writes: > - if (pABC) TRACE("Total for run: abcA=%d, abcB=%d, abcC=%d\n", > pABC->abcA, pABC->abcB, pABC->abcC); > + if (pABC) > + { > + ABC tmp; > + > + > + /* the compositie 'A' width is simply the padding from the first > glyph in the run */ > + get_cache_glyph_widths(psc, pwGlyphs[0], &tmp); > + pABC->abcA = tmp.abcA; > + > + /* the compositie 'C' width is simply the padding from the last > glyph in the run */ > + get_cache_glyph_widths(psc, pwGlyphs[cGlyphs - 1], &tmp); > + pABC->abcC = tmp.abcC; > + > + /* since the 'B' width now includes the 'A' and 'C' widths, we must > adjust it slightly */ > + pABC->abcB -= pABC->abcA + pABC->abcC; > + > + TRACE("Total for run: abcA=%d, abcB=%d, abcC=%d\n", pABC->abcA, > pABC->abcB, pABC->abcC); > + }
That's too complicated, there's no reason to retrieve the sizes twice, just handle that in the main loop. -- Alexandre Julliard julli...@winehq.org