Open
Bug 1363447
Opened 8 years ago
Updated 2 years ago
make ApplicationAccessible::Shutdown() call AccessibleWrap::Shutdown()
Categories
(Core :: Disability Access APIs, enhancement, P3)
Core
Disability Access APIs
Tracking
()
NEW
People
(Reporter: tbsaunde, Unassigned)
References
(Blocks 1 open bug)
Details
Attachments
(1 file)
943 bytes,
patch
|
davidb
:
review+
|
Details | Diff | Splinter Review |
The ApplicationAccessible can get shut down by the XPCOM-SHUTDOWN
notification while the platform still has references to it and can still call
methods on it. That means that if we spin the event loop at all after the
accessibility xpcom shutdown observer runs (which can happen) then the
platform can currently call methods on a shutdown application accessible.
The result of that is assertions that ApplicationAccessible::mAppInfo is
null. We can deal with this by having ApplicationAccessible::Shutdown() call
AccessibleWrap::Shutdown() so the application accessible gets marked as
shutdown. That means that when the platform tries to call methods on it
after it has been shut down the generic logic to avoid calling methods on
defunct accessibles will kick in and we will bail out before calling methods
on the shut down application accessible.
One case where the event loop can spin after a11y recieves the xpcom shutdown
notification is that the web workers xpcom shutdown observer can run after
the a11y one. The web worker observer ends up notifying observers of its own
shutdown, and one of the observers of that notification is AsyncShutdown
which will spin the event loop during the call to its observer for the
web workers shutdown message.
Reporter | ||
Comment 1•8 years ago
|
||
unfortunately I'm not really sure how to write a test that actually covers this issue well other than one that sets up its own observer which seems like more work than its probably worth.
Attachment #8865950 -
Flags: review?(dbolter)
Comment 2•8 years ago
|
||
Comment on attachment 8865950 [details] [diff] [review]
make ApplicationAccessible::Shutdown() call AccessibleWrap::Shutdown()
Review of attachment 8865950 [details] [diff] [review]:
-----------------------------------------------------------------
Frightening. I'd sort of prefer comment 1 over this commit message. Can we have a code comment too?
Attachment #8865950 -
Flags: review?(dbolter) → review+
Updated•7 years ago
|
Flags: needinfo?(dbolter)
Priority: -- → P3
Comment 3•7 years ago
|
||
Any advice for next steps on this bug?
Flags: needinfo?(surkov.alexander)
Flags: needinfo?(eitan)
Comment 4•7 years ago
|
||
(In reply to David Bolter [:davidb] (NeedInfo me for attention) from comment #3)
> Any advice for next steps on this bug?
I'm sort of confused: the patch is r+ by you. You don't want to take the patch anymore or you want to incorporate some changes into it? What kind of advice do you look for?
Flags: needinfo?(surkov.alexander)
Comment 5•7 years ago
|
||
I would like to see a test that exhibits the problem we are fixing. Otherwise, I don't really have an opinion on this one way or the other.
Flags: needinfo?(eitan)
Updated•7 years ago
|
Has Regression Range: --- → irrelevant
Updated•7 years ago
|
Flags: needinfo?(dbolter)
Comment 6•6 years ago
|
||
There's a r+ patch which didn't land and no activity in this bug for 2 weeks.
:tbsaunde, could you have a look please?
Flags: needinfo?(tbsaunde+mozbugs)
Comment 7•2 years ago
|
||
Clear a needinfo that is pending on an inactive user.
Inactive users most likely will not respond; if the missing information is essential and cannot be collected another way, the bug maybe should be closed as INCOMPLETE
.
For more information, please visit auto_nag documentation.
Flags: needinfo?(tbsaunde+mozbugs)
Updated•2 years ago
|
Severity: normal → S3
You need to log in
before you can comment on or make changes to this bug.
Description
•