[webkit-reviews] review requested: [Bug 31035] [GTK] some accessibility tests hitting assertion in debug builds : [Attachment 42359] Replace assertions with sanity checks
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Mon Nov 2 21:01:31 PST 2009
Joanmarie Diggs <joanmarie.diggs at gmail.com> has asked for review:
Bug 31035: [GTK] some accessibility tests hitting assertion in debug builds
https://bugs.webkit.org/show_bug.cgi?id=31035
Attachment 42359: Replace assertions with sanity checks
https://bugs.webkit.org/attachment.cgi?id=42359&action=review
------- Additional Comments from Joanmarie Diggs <joanmarie.diggs at gmail.com>
===================
table-notbody.html
===================
The body elements consist of a single table which:
* Has no cells
* Has style "visibility: hidden;"
As a result it's ignored as an accessible object and the web view is childless.
Then along comes the layout test:
[...]
body.focus();
var table = accessibilityController.focusedElement.childAtIndex(0);
result.innerText += "Test passes if there is no crash\n\n";
[...]
Asking for a non-existent child triggers the assertion.
=========================
nochildren-elements.html
=========================
Similar deal.
[...]
<!-- This test makes sure that these types of elements DO NOT have children.
The test will pass if attributesOfChildren() returns nil -->
[...]
~~~~~~~~~~~~~~~
I suspect that is also what's taking place with
accessibility/non-data-table-cell-title-ui-element.html. I've not fully
debugged it to prove that beyond a shadow of a doubt, but the attached patch
seems to solve it along with the above two tests.
This is just my opinion, but I don't think webkit_accessible_ref_child is the
place for assertions like this because anyone
* these tests
* badly-behaved ATs
* me typing acc.getChildAtIndex(10000000) in Accerciser's iPython console
can easily attempt to ref a child at a bogus index. As such, I think that in
this particular case, it makes more sense to do some sanity checking.
As for accessibility/aria-controls-with-tabs.html: Something else is going on
there. My two main, totally-unproven theories right now are the hierarchy:
* Root ain't what the test thinks it is (perhaps its the object of
ATK_ROLE_DOCUMENT_FRAME), or
* We've got "ignored" objects sneaking in
I'll dig some more.
More information about the webkit-reviews
mailing list