summaryrefslogtreecommitdiff
path: root/src/svg/qsvgtinydocument.cpp
diff options
context:
space:
mode:
authorNicolas Fella <nicolas.fella@kdab.com>2020-09-19 16:56:21 +0200
committerEirik Aavitsland <eirik.aavitsland@qt.io>2020-10-21 09:42:31 +0200
commit2f63ddc6afeb3d2c3c7a42add0129547acd61ede (patch)
tree042478f729ca511c66630d436391f3ebd6170538 /src/svg/qsvgtinydocument.cpp
parent5f45ccdf8bc09786766e8bd2f4b8c73dd7401812 (diff)
downloadqtsvg-2f63ddc6afeb3d2c3c7a42add0129547acd61ede.tar.gz
Allow loading SVG files with a doctype declaration
SVGs may have a DOCTYPE declaration (https://www.w3.org/TR/2003/REC-SVGMobile-20030114/) in their first line. This patch makes sure those SVGs are loaded properly Fixes: QTBUG-87583 Pick-to: 5.15 5.12 Change-Id: Ia3dcb519b6ee2b498dc81ef496764d99ea6c4a9a Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io> Reviewed-by: Robert Loehning <robert.loehning@qt.io> Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Diffstat (limited to 'src/svg/qsvgtinydocument.cpp')
-rw-r--r--src/svg/qsvgtinydocument.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/svg/qsvgtinydocument.cpp b/src/svg/qsvgtinydocument.cpp
index 5956e35..63d0797 100644
--- a/src/svg/qsvgtinydocument.cpp
+++ b/src/svg/qsvgtinydocument.cpp
@@ -159,8 +159,8 @@ static QByteArray qt_inflateSvgzDataFrom(QIODevice *device, bool doCheckContent)
if (doCheckContent) {
// Quick format check, equivalent to QSvgIOHandler::canRead()
- QByteArray buf = destination.left(8);
- if (!buf.contains("<?xml") && !buf.contains("<svg") && !buf.contains("<!--")) {
+ QByteArray buf = destination.left(16);
+ if (!buf.contains("<?xml") && !buf.contains("<svg") && !buf.contains("<!--") && !buf.contains("<!DOCTYPE svg")) {
inflateEnd(&zlibStream);
qCWarning(lcSvgHandler, "Error while inflating gzip file: SVG format check failed");
return QByteArray();