Bug 393141. Fix crash with display:none on HTML option. r=evan.yan, a=dsicore
git-svn-id: svn://10.0.0.236/trunk@236251 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
parent
a3601d261f
commit
24ec196ade
@ -394,6 +394,7 @@ nsHTMLSelectListAccessible::CacheOptSiblings(nsIAccessibilityService *aAccServic
|
||||
|
||||
PRUint32 numChildren = aParentContent->GetChildCount();
|
||||
nsCOMPtr<nsIAccessible> lastGoodAccessible(aLastGoodAccessible);
|
||||
nsCOMPtr<nsIAccessible> newAccessible;
|
||||
|
||||
for (PRUint32 count = 0; count < numChildren; count ++) {
|
||||
nsIContent *childContent = aParentContent->GetChildAt(count);
|
||||
@ -402,14 +403,19 @@ nsHTMLSelectListAccessible::CacheOptSiblings(nsIAccessibilityService *aAccServic
|
||||
}
|
||||
nsCOMPtr<nsIAtom> tag = childContent->Tag();
|
||||
if (tag == nsAccessibilityAtoms::option || tag == nsAccessibilityAtoms::optgroup) {
|
||||
lastGoodAccessible = AccessibleForOption(aAccService,
|
||||
childContent,
|
||||
lastGoodAccessible,
|
||||
aChildCount);
|
||||
newAccessible = AccessibleForOption(aAccService,
|
||||
childContent,
|
||||
lastGoodAccessible,
|
||||
aChildCount);
|
||||
if (newAccessible) {
|
||||
lastGoodAccessible = newAccessible;
|
||||
}
|
||||
if (tag == nsAccessibilityAtoms::optgroup) {
|
||||
lastGoodAccessible = CacheOptSiblings(aAccService, childContent,
|
||||
lastGoodAccessible,
|
||||
aChildCount);
|
||||
newAccessible = CacheOptSiblings(aAccService, childContent,
|
||||
lastGoodAccessible, aChildCount);
|
||||
if (newAccessible) {
|
||||
lastGoodAccessible = newAccessible;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user