diff options
author | Eirik Aavitsland <eirik.aavitsland@qt.io> | 2017-11-14 14:47:08 +0100 |
---|---|---|
committer | Eirik Aavitsland <eirik.aavitsland@qt.io> | 2017-11-15 07:30:00 +0000 |
commit | 18a2adad907523ea31251ff0b62e3321241a40fa (patch) | |
tree | 406882094df55cbcd0d224c9fdd110d1e5886978 /src/svg/qsvgnode_p.h | |
parent | c4c9b60dc4bbe3c3837c80ea63682f3ef9403277 (diff) | |
download | qtsvg-18a2adad907523ea31251ff0b62e3321241a40fa.tar.gz |
Fix crash on recursive self-referral in <use> element
Referring to an ancestor in a <use> element would lead to endless
recursion. Add checks to avoid recursion, and also emit a warning
while parsing.
Task-number: QTBUG-64425
Change-Id: I9ee1b9bfef13796cc3f387ff8579c6b13bc4ae9a
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
Diffstat (limited to 'src/svg/qsvgnode_p.h')
-rw-r--r-- | src/svg/qsvgnode_p.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/svg/qsvgnode_p.h b/src/svg/qsvgnode_p.h index f9f6202..f2502e4 100644 --- a/src/svg/qsvgnode_p.h +++ b/src/svg/qsvgnode_p.h @@ -113,6 +113,7 @@ public: virtual void draw(QPainter *p, QSvgExtraStates &states) =0; QSvgNode *parent() const; + bool isDescendantOf(const QSvgNode *parent) const; void appendStyleProperty(QSvgStyleProperty *prop, const QString &id); void applyStyle(QPainter *p, QSvgExtraStates &states) const; |