summaryrefslogtreecommitdiff
path: root/vcl
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2012-03-20 13:16:38 +0000
committerCaolán McNamara <caolanm@redhat.com>2012-03-20 13:48:12 +0000
commiteeffbc94d129756410bd2a9198dff5858479738f (patch)
treeafd0b00f3a7091a21c19009f9529394f1939382c /vcl
parentde01d3c6d3f9a617d0a7d5b95305c7c3b68d39d6 (diff)
Resolves: fdo#46923/fdo#46750 take mnSubStringMin into account
Diffstat (limited to 'vcl')
-rw-r--r--vcl/win/source/gdi/winlayout.cxx4
1 files changed, 3 insertions, 1 deletions
diff --git a/vcl/win/source/gdi/winlayout.cxx b/vcl/win/source/gdi/winlayout.cxx
index 5d0611b48b8a..1039526e9a4b 100644
--- a/vcl/win/source/gdi/winlayout.cxx
+++ b/vcl/win/source/gdi/winlayout.cxx
@@ -1861,6 +1861,8 @@ int UniscribeLayout::GetNextGlyphs( int nLen, sal_GlyphId* pGlyphs, Point& rPos,
//position so that iterating over glyph slots one at a time for
//glyph fallback can keep context as to what characters are the
//inputs that caused a missing glyph in a given font.
+ //
+ //See: fdo#46923/fdo#46750 for extra complexities
{
int dir = 1;
int out = rVI.mnMinCharPos;
@@ -1871,7 +1873,7 @@ int UniscribeLayout::GetNextGlyphs( int nLen, sal_GlyphId* pGlyphs, Point& rPos,
}
for(c = rVI.mnMinCharPos; c < rVI.mnEndCharPos; ++c)
{
- int i = out;
+ int i = out - mnSubStringMin;
mpGlyphs2Chars[i] = c;
out += dir;
}