diff options
author | Jan Arve Saether <jan-arve.saether@digia.com> | 2013-07-02 16:13:31 +0200 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-07-02 16:33:08 +0200 |
commit | 14721becc362b22aea393dcb92e336f0f9820f6f (patch) | |
tree | 243db7c5539bf661f242748f76144416c415ef81 /src/plugins/platforms/windows/accessible/qwindowsmsaaaccessible.cpp | |
parent | 671d6075127bf7cb2d6c1c7ae539c266a320604e (diff) |
Do not call QAccessible::child() with a negative index.
Fix assert on Windows:
QFATAL : tst_QAbstractItemView::testChangeEditorState():
ASSERT: "index_ >= 0" in file itemviews.cpp, line 1123
Change-Id: I4f19c68bbe00d9c75768e7125cf3b33bc09a09e5
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
Diffstat (limited to 'src/plugins/platforms/windows/accessible/qwindowsmsaaaccessible.cpp')
-rw-r--r-- | src/plugins/platforms/windows/accessible/qwindowsmsaaaccessible.cpp | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/src/plugins/platforms/windows/accessible/qwindowsmsaaaccessible.cpp b/src/plugins/platforms/windows/accessible/qwindowsmsaaaccessible.cpp index ce61a8b092..93592eb969 100644 --- a/src/plugins/platforms/windows/accessible/qwindowsmsaaaccessible.cpp +++ b/src/plugins/platforms/windows/accessible/qwindowsmsaaaccessible.cpp @@ -564,15 +564,10 @@ HRESULT STDMETHODCALLTYPE QWindowsMsaaAccessible::accLocation(long *pxLeft, long if (!accessible) return E_FAIL; - QRect rect; - if (varID.lVal) { - QAccessibleInterface *child = accessible->child(varID.lVal - 1); - if (!child || !child->isValid()) - return E_FAIL; - rect = child->rect(); - } else { - rect = accessible->rect(); - } + QAccessibleInterface *acc = childPointer(accessible, varID); + if (!acc || !acc->isValid()) + return E_FAIL; + const QRect rect = acc->rect(); *pxLeft = rect.x(); *pyTop = rect.y(); |