summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorSami Merila <sami.merila@nokia.com>2010-09-30 08:34:48 (GMT)
committerSami Merila <sami.merila@nokia.com>2010-09-30 08:34:48 (GMT)
commitb9ab21b03dfebc7c5f8b4cbc2fdd2b880c7d9f99 (patch)
tree2faca6bf3e0239583af0ceabc2f55ece365ad177 /src
parent6d980ae8985e3856ab87c4d0aaada3bcdc5fa1e5 (diff)
downloadQt-b9ab21b03dfebc7c5f8b4cbc2fdd2b880c7d9f99.zip
Qt-b9ab21b03dfebc7c5f8b4cbc2fdd2b880c7d9f99.tar.gz
Qt-b9ab21b03dfebc7c5f8b4cbc2fdd2b880c7d9f99.tar.bz2
QS60Style: Possible NULL pointer use when drawing frame
QS60Style::drawControl casts QStyleOption pointer to QStyleOptionFrame, yet never checks if the orginal pointer was NULL or not. The casted pointer is then used to fetch palette information from style option. Thus, this might lead to crash. Reviewed-by: Miikka Heikkinen
Diffstat (limited to 'src')
-rw-r--r--src/gui/styles/qs60style.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/gui/styles/qs60style.cpp b/src/gui/styles/qs60style.cpp
index bafc5f3..3a01f3f 100644
--- a/src/gui/styles/qs60style.cpp
+++ b/src/gui/styles/qs60style.cpp
@@ -2001,7 +2001,7 @@ void QS60Style::drawControl(ControlElement element, const QStyleOption *option,
case CE_ShapedFrame:
if (const QTextEdit *textEdit = qobject_cast<const QTextEdit *>(widget)) {
const QStyleOptionFrame *frame = qstyleoption_cast<const QStyleOptionFrame *>(option);
- if (QS60StylePrivate::canDrawThemeBackground(frame->palette.base(), widget))
+ if (frame && QS60StylePrivate::canDrawThemeBackground(frame->palette.base(), widget))
QS60StylePrivate::drawSkinElement(QS60StylePrivate::SE_Editor, painter, option->rect, flags);
else
QCommonStyle::drawControl(element, option, painter, widget);