Closed Bug 665335 Opened 9 years ago Closed 2 years ago

Crash [@ nsDocAccessible::FireDelayedAccessibleEvent]

Categories

(Core :: Disability Access APIs, defect, critical)

x86
Windows 7
defect
Not set
critical

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: jruderman, Unassigned)

References

(Blocks 2 open bugs)

Details

(Keywords: crash, testcase)

Crash Data

Attachments

(3 files)

1. Enable accessibility, e.g. by pasting the following into the js console:

Components.classes["@mozilla.org/accessibilityService;1"]
      .getService(Components.interfaces.nsIAccessibleRetrieval);

2. Load the testcase.

3. Click the "Crash me" button.

Result: crash like bp-413c4101-a1a0-452e-810f-b1fc92110619
assertions are because the content referred by document accessible was adopted by another document, maybe the document shouldn't keep content reference to content at all
Blocks: a11ynext
Attached patch patchSplinter Review
Assignee: nobody → surkov.alexander
Status: NEW → ASSIGNED
Attachment #550616 - Flags: review?(trev.saunders)
Attachment #550616 - Flags: review?(roc)
Comment on attachment 550616 [details] [diff] [review]
patch

it doesn't fix the crash entirely (there's another one when this patch is applied), but this patch is something we should take anyway
(In reply to comment #4)
> Comment on attachment 550616 [details] [diff] [review] [diff] [details] [review]
> patch
> 
> it doesn't fix the crash entirely (there's another one when this patch is
> applied), but this patch is something we should take anyway

actually it doesn't fix the crash at all, but anyway it makes sense to get it :)
Comment on attachment 550616 [details] [diff] [review]
patch

since AccSerice() should be really light weight I might do

nsAccessibilityService* AaccServ = AccService()
if (aIsActive && accService)
  accService->ActivatePresShell();

but either way is fine with me

p.s. I think its worth considering something like a11y::GetAccessible(content) a11y::ActivatePresShell() instead of getting  the  service singleton
Attachment #550616 - Flags: review?(trev.saunders) → review+
(In reply to comment #6)

> p.s. I think its worth considering something like
> a11y::GetAccessible(content) a11y::ActivatePresShell() instead of getting 
> the  service singleton

makes sense
part1 (Don't trigger PresShellActivated when presshell is not activated) is landed http://hg.mozilla.org/mozilla-central/rev/c2a23df05c4c
Status: ASSIGNED → RESOLVED
Closed: 9 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla8
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Attachment #550616 - Attachment filename: patch → part1
Does this bug still need love?
(In reply to alexander :surkov from comment #7)
> (In reply to comment #6)
> 
> > p.s. I think its worth considering something like
> > a11y::GetAccessible(content) a11y::ActivatePresShell() instead of getting 
> > the  service singleton
> 
> makes sense

Any WIPs out there?
Crash Signature: [@ nsDocAccessible::FireDelayedAccessibleEvent(AccEvent*) ] → [@ nsDocAccessible::FireDelayedAccessibleEvent(AccEvent*) ] [@ nsDocAccessible::FireDelayedAccessibleEvent ]
Doesn't crash anymore on Win10 or Ubuntu 17.10.
Assignee: surkov.alexander → nobody
Status: REOPENED → RESOLVED
Closed: 9 years ago2 years ago
Resolution: --- → WORKSFORME
Target Milestone: mozilla8 → ---
You need to log in before you can comment on or make changes to this bug.