summaryrefslogtreecommitdiffstats
path: root/src/gui
diff options
context:
space:
mode:
authorQt Continuous Integration System <qt-info@nokia.com>2011-06-14 21:10:38 (GMT)
committerQt Continuous Integration System <qt-info@nokia.com>2011-06-14 21:10:38 (GMT)
commit192ed507cdb16125d2cdcaff63b1591c0d6b4596 (patch)
treeabf49efb852a916749f44a3c3ed888019c460a38 /src/gui
parent10fb4f1fe7750bb48be015169c827cb585e19196 (diff)
parent11f20a34cbad9797545ab4eb638ff311af6fc6fc (diff)
downloadQt-192ed507cdb16125d2cdcaff63b1591c0d6b4596.zip
Qt-192ed507cdb16125d2cdcaff63b1591c0d6b4596.tar.gz
Qt-192ed507cdb16125d2cdcaff63b1591c0d6b4596.tar.bz2
Merge branch 'master' of scm.dev.nokia.troll.no:qt/qt-water-staging into master-integration
* 'master' of scm.dev.nokia.troll.no:qt/qt-water-staging: When asking for relations, don't crash on children that don't return an interface. Remove more inconsistencies with invisible. Fix a problem where the video would'nt show on some containers QAccessibleToolButton::text should return accessibleName if set. Remove stray semicolon.
Diffstat (limited to 'src/gui')
-rw-r--r--src/gui/accessible/qaccessiblewidget.cpp11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/gui/accessible/qaccessiblewidget.cpp b/src/gui/accessible/qaccessiblewidget.cpp
index 60ed48f..6a7d7e9 100644
--- a/src/gui/accessible/qaccessiblewidget.cpp
+++ b/src/gui/accessible/qaccessiblewidget.cpp
@@ -704,13 +704,16 @@ int QAccessibleWidget::navigate(RelationFlag relation, int entry,
int sibCount = pIface->childCount();
QAccessibleInterface *candidate = 0;
for (int i = 0; i < sibCount && entry; ++i) {
- pIface->navigate(Child, i+1, &candidate);
- Q_ASSERT(candidate);
- if (candidate->relationTo(0, this, 0) & Label)
+ const int childId = pIface->navigate(Child, i+1, &candidate);
+ Q_ASSERT(childId >= 0);
+ if (childId > 0)
+ candidate = pIface;
+ if (candidate->relationTo(childId, this, 0) & Label)
--entry;
if (!entry)
break;
- delete candidate;
+ if (candidate != pIface)
+ delete candidate;
candidate = 0;
}
if (!candidate) {