From 0afee2870bc4fef180106e80a361da2ef1e3d442 Mon Sep 17 00:00:00 2001 From: Eirik Aavitsland Date: Wed, 14 Oct 2020 09:29:19 +0200 Subject: Reject corrupt svgs with invalid size Fixes oss-fuzz-24735. Change-Id: I626905562d37b1e53bd346b13bd88894401818ca Reviewed-by: Robert Loehning Reviewed-by: Allan Sandfeld Jensen (cherry picked from commit fcbbc73a97fefacace630e83a5c6ee48fa8eec43) Reviewed-by: Qt Cherry-pick Bot --- src/svg/qsvgrenderer.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/svg/qsvgrenderer.cpp b/src/svg/qsvgrenderer.cpp index d4ad373..635eb0a 100644 --- a/src/svg/qsvgrenderer.cpp +++ b/src/svg/qsvgrenderer.cpp @@ -314,6 +314,10 @@ static bool loadDocument(QSvgRenderer *const q, { delete d->render; d->render = QSvgTinyDocument::load(in); + if (d->render && !d->render->size().isValid()) { + delete d->render; + d->render = nullptr; + } if (d->render && d->render->animated() && d->fps > 0) { if (!d->timer) d->timer = new QTimer(q); -- cgit v1.2.1