[cairo-commit] 2 commits - src/cairo-ft-font.c

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Fri Sep 2 12:28:59 UTC 2022


 src/cairo-ft-font.c |    5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

New commits:
commit 716c216ebcd7634fd95a51b748d1cbd36ab2fbaf
Merge: c188715bb 5c7e2dafd
Author: Uli Schlachter <psychon at znc.in>
Date:   Fri Sep 2 12:28:57 2022 +0000

    Merge branch 'ofz50805' into 'master'
    
    ofz#50805 crash seen in fuzzing libreoffice text rendering
    
    See merge request cairo/cairo!350

commit 5c7e2dafd5d44f54d07082ce747153918c2c0b68
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Wed Aug 31 09:56:21 2022 +0100

    ofz#50805 crash seen in fuzzing libreoffice text rendering
    
     pixman_image_get_format /work/workdir/UnpackedTarball/pixman/pixman/pixman-image.c:939:16
     _cairo_ft_scaled_glyph_init_surface /work/workdir/UnpackedTarball/cairo/src/cairo-ft-font.c:2574:9
     _cairo_ft_scaled_glyph_init /work/workdir/UnpackedTarball/cairo/src/cairo-ft-font.c:2754:11
     _cairo_scaled_glyph_lookup /work/workdir/UnpackedTarball/cairo/src/cairo-scaled-font.c:3073:11
     composite_glyphs /work/workdir/UnpackedTarball/cairo/src/cairo-image-compositor.c:910:15
     composite_glyphs /work/workdir/UnpackedTarball/cairo/src/cairo-traps-compositor.c:2295:12
     clip_and_composite /work/workdir/UnpackedTarball/cairo/src/cairo-traps-compositor.c:1049:15
     _cairo_traps_compositor_glyphs /work/workdir/UnpackedTarball/cairo/src/cairo-traps-compositor.c:2331:11
     _cairo_compositor_glyphs /work/workdir/UnpackedTarball/cairo/src/cairo-compositor.c:292:11
     _cairo_image_surface_glyphs /work/workdir/UnpackedTarball/cairo/src/cairo-image-surface.c:1030:12
     _cairo_surface_show_text_glyphs /work/workdir/UnpackedTarball/cairo/src/cairo-surface.c:2920:15
     _cairo_gstate_show_text_glyphs /work/workdir/UnpackedTarball/cairo/src/cairo-gstate.c:0
     cairo_show_glyphs /work/workdir/UnpackedTarball/cairo/src/cairo.c:3670:14
     CairoTextRender::DrawTextLayout(GenericSalLayout const&, SalGraphics const&) /src/libreoffice/vcl/unx/generic/gdi/cairotextrender.cxx:337:9

diff --git a/src/cairo-ft-font.c b/src/cairo-ft-font.c
index cdb02ff65..b0a42b5ce 100644
--- a/src/cairo-ft-font.c
+++ b/src/cairo-ft-font.c
@@ -2584,10 +2584,11 @@ _cairo_ft_scaled_glyph_init_surface (cairo_ft_scaled_font_t     *scaled_font,
 	    if (unlikely (status))
 		cairo_surface_destroy (&surface->base);
 	}
-	if (unlikely (status))
-	    return status;
     }
 
+    if (unlikely (status))
+	return status;
+
     if (info == CAIRO_SCALED_GLYPH_INFO_COLOR_SURFACE) {
 	/* We tried loading a color glyph and can now check if we got
 	 * a color glyph and set scaled_glyph->color_glyph


More information about the cairo-commit mailing list