diff options
author | Yan Shapochnik <shapochniky@seapine.com> | 2012-04-11 15:02:49 -0400 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2012-04-12 18:27:51 +0200 |
commit | dae4bd8489993a250cfd7890ec963bf8190a7a97 (patch) | |
tree | 0a335581ee00325cda1074402dbb89ae84aeed8f | |
parent | 40a1e8eccf42dad9ff70ad54658abcfc9bf896ae (diff) |
Fix possible crash issue when testing the state of a QAccessibleMenuItem
The owner widget of a QAccessibleMenuItem may be NULL. Checking for a valid pointer before dereferncing.
Port of Qt 4 patch.
Change-Id: Ic3149ccc5d6ae0ebc83dae58163ae2f60397fd28
(cherry picked from commit 3f526366af14f6c640dd52cd089b00776ab06731)
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
-rw-r--r-- | src/plugins/accessible/widgets/qaccessiblemenu.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/plugins/accessible/widgets/qaccessiblemenu.cpp b/src/plugins/accessible/widgets/qaccessiblemenu.cpp index d3ca1629bd..6009d25977 100644 --- a/src/plugins/accessible/widgets/qaccessiblemenu.cpp +++ b/src/plugins/accessible/widgets/qaccessiblemenu.cpp @@ -249,7 +249,7 @@ QAccessible::State QAccessibleMenuItem::state() const QAccessible::State s; QWidget *own = owner(); - if (own->testAttribute(Qt::WA_WState_Visible) == false || m_action->isVisible() == false) { + if (own && own->testAttribute(Qt::WA_WState_Visible) == false || m_action->isVisible() == false) { s.invisible = true; } @@ -262,7 +262,7 @@ QAccessible::State QAccessibleMenuItem::state() const s.focused = true; #endif } - if (own->style()->styleHint(QStyle::SH_Menu_MouseTracking)) + if (own && own->style()->styleHint(QStyle::SH_Menu_MouseTracking)) s.hotTracked = true; if (m_action->isSeparator() || !m_action->isEnabled()) s.disabled = true; |