Consistently check for nullptr in QGraphicsTextItem::inputMethodQuery
If dd->control is nullptr, then it's nullptr all the way, so don't dereference it in the calls to dd->controlOffset. Fixes static analyzer warning 9c33d9bc9b8cf438dccb63aa52afcbe0. Pick-to: 6.1 6.0 5.15 Change-Id: I7a61b6438422373678d4fcb66255b750c550724d Reviewed-by: Oliver Eftevaag <oliver.eftevaag@qt.io> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
This commit is contained in:
parent
98e4652a96
commit
7edf0fbb9e
@ -10311,14 +10311,16 @@ QVariant QGraphicsTextItem::inputMethodQuery(Qt::InputMethodQuery query) const
|
||||
v = int(inputMethodHints());
|
||||
else if (dd->control)
|
||||
v = dd->control->inputMethodQuery(query, QVariant());
|
||||
if (v.userType() == QMetaType::QRectF)
|
||||
v = v.toRectF().translated(-dd->controlOffset());
|
||||
else if (v.userType() == QMetaType::QPointF)
|
||||
v = v.toPointF() - dd->controlOffset();
|
||||
else if (v.userType() == QMetaType::QRect)
|
||||
v = v.toRect().translated(-dd->controlOffset().toPoint());
|
||||
else if (v.userType() == QMetaType::QPoint)
|
||||
v = v.toPoint() - dd->controlOffset().toPoint();
|
||||
if (dd->control) {
|
||||
if (v.userType() == QMetaType::QRectF)
|
||||
v = v.toRectF().translated(-dd->controlOffset());
|
||||
else if (v.userType() == QMetaType::QPointF)
|
||||
v = v.toPointF() - dd->controlOffset();
|
||||
else if (v.userType() == QMetaType::QRect)
|
||||
v = v.toRect().translated(-dd->controlOffset().toPoint());
|
||||
else if (v.userType() == QMetaType::QPoint)
|
||||
v = v.toPoint() - dd->controlOffset().toPoint();
|
||||
}
|
||||
return v;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user