apply glyph fragment offset after fragment
This commit is contained in:
parent
14d4adb901
commit
eb2f3a02b4
12
libfreerdp/cache/glyph.c
vendored
12
libfreerdp/cache/glyph.c
vendored
@ -48,6 +48,7 @@ void update_process_glyph(rdpContext* context, BYTE* data, int* index,
|
||||
|
||||
if ((ulCharInc == 0) && (!(flAccel & SO_CHAR_INC_EQUAL_BM_BASE)))
|
||||
{
|
||||
/* Contrary to fragments, the offset is added before the glyph. */
|
||||
(*index)++;
|
||||
offset = data[*index];
|
||||
|
||||
@ -111,6 +112,12 @@ void update_process_glyph_fragments(rdpContext* context, BYTE* data, UINT32 leng
|
||||
|
||||
if (fragments != NULL)
|
||||
{
|
||||
for (n = 0; n < (int) size; n++)
|
||||
{
|
||||
update_process_glyph(context, fragments, &n, &x, &y, cacheId, ulCharInc, flAccel);
|
||||
}
|
||||
|
||||
/* Contrary to glyphs, the offset is added after the fragment. */
|
||||
if ((ulCharInc == 0) && (!(flAccel & SO_CHAR_INC_EQUAL_BM_BASE)))
|
||||
{
|
||||
if (flAccel & SO_VERTICAL)
|
||||
@ -118,11 +125,6 @@ void update_process_glyph_fragments(rdpContext* context, BYTE* data, UINT32 leng
|
||||
else
|
||||
x += data[index + 2];
|
||||
}
|
||||
|
||||
for (n = 0; n < (int) size; n++)
|
||||
{
|
||||
update_process_glyph(context, fragments, &n, &x, &y, cacheId, ulCharInc, flAccel);
|
||||
}
|
||||
}
|
||||
|
||||
index += (index + 2 < (int) length) ? 3 : 2;
|
||||
|
Loading…
Reference in New Issue
Block a user