From f3fac71a1257c57724211acaccb5c80d60c03ad8 Mon Sep 17 00:00:00 2001 From: Mira Grudzinska Date: Tue, 8 Jun 2021 02:06:35 +0200 Subject: [PATCH] sw_engine: added check whether surface width <= surface stride In a case width > stride segf occured. Such a case should be treated as an invalid arg. --- src/lib/sw_engine/tvgSwRenderer.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lib/sw_engine/tvgSwRenderer.cpp b/src/lib/sw_engine/tvgSwRenderer.cpp index 14642698..ba5629de 100644 --- a/src/lib/sw_engine/tvgSwRenderer.cpp +++ b/src/lib/sw_engine/tvgSwRenderer.cpp @@ -277,7 +277,7 @@ bool SwRenderer::viewport(const RenderRegion& vp) bool SwRenderer::target(uint32_t* buffer, uint32_t stride, uint32_t w, uint32_t h, uint32_t cs) { - if (!buffer || stride == 0 || w == 0 || h == 0) return false; + if (!buffer || stride == 0 || w == 0 || h == 0 || w > stride) return false; if (!surface) { surface = new SwSurface;