Module: wine Branch: stable Commit: f757ea635cd29d98d1d8ae0078bcc83aa658dc9d URL: https://source.winehq.org/git/wine.git/?a=commit;h=f757ea635cd29d98d1d8ae007... Author: Nikolay Sivov <nsivov(a)codeweavers.com> Date: Mon Apr 15 18:22:46 2019 +0300 dwrite/layout: Fix invalid index access to cluster array. Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45543 Signed-off-by: Nikolay Sivov <nsivov(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> (cherry picked from commit 571ffaf380f3d80da60ff8bca4031baceefa7811) Signed-off-by: Michael Stefaniuc <mstefani(a)winehq.org> --- dlls/dwrite/layout.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/dlls/dwrite/layout.c b/dlls/dwrite/layout.c index a562927..d958f8d 100644 --- a/dlls/dwrite/layout.c +++ b/dlls/dwrite/layout.c @@ -1853,6 +1853,9 @@ static void layout_add_line(struct dwrite_textlayout *layout, UINT32 first_clust metrics.trailingWhitespaceLength += cluster->length; trailingspacewidth += cluster->width; + + if (index == 0) + break; } /* Line metrics length includes trailing whitespace length too */