Closed Bug 441610 Opened 16 years ago Closed 16 years ago

Calling getAttributes() on a defunct object crashes Thunderbird.

Categories

(Core :: Disability Access APIs, defect)

x86
Linux
defect
Not set
major

Tracking

()

RESOLVED FIXED

People

(Reporter: jdiggs, Assigned: MarcoZ)

References

(Blocks 1 open bug)

Details

(Keywords: access, crash, fixed1.9.0.2)

Attachments

(1 file)

Steps to reproduce:

1. Launch Thunderbird
2. Press Enter or double-click on a message to open it
3. Launch Accerciser and select the accessible for the message
   body (role: document frame)
4. Switch to Accerciser's iPython console and type:
   doc = acc.queryDocument()
5. Return to Thunderbird and press Delete to delete the current
   message.
6. Return to the iPython console and type:
   doc.getAttributes()

Thunderbird will crash.

This was discovered while working on an Orca bug.  We're fixing things on the Orca side to not trigger this crash, but Thunderbird still shouldn't crash. :-)

Thanks!
Blocks: 191a11y
Keywords: crash
Aaron, is this the right way to fix this?
Assignee: nobody → marco.zehe
Status: NEW → ASSIGNED
Attachment #326536 - Flags: review?(aaronleventhal)
Attachment #326536 - Flags: review?(aaronleventhal) → review+
Pushed to mozilla-central in changeset:
http://hg.mozilla.org/mozilla-central/index.cgi/rev/19e70ca4c2ef
Status: ASSIGNED → RESOLVED
Closed: 16 years ago
Resolution: --- → FIXED
Comment on attachment 326536 [details] [diff] [review]
Check if accessible is still valid

Requesting approval for 1.9.0.x as well. Very safe check for a defunct object.
Attachment #326536 - Flags: approval1.9.0.1?
Marco:  That has got to be the fastest fix EVER!  You rock sir!  Thanks.
Hi Joanie,

for the time being and for your own builds, these new style patches get applied using patch -p1, not patch -p0 as CVS patches do. But if you like, you're welcome to use the patch in a build of yours and continue your work with that build until we hopefully get this landed on the 1.9.0.x branch, which is what Thunderbird 3.0a2pre is currently using.
Attachment #326536 - Flags: approval1.9.0.1? → approval1.9.0.2?
This would be good to have for Shredder alpha 2, since it can happen anytime that someone:
1. reads a message
2. presses Delete to get rid of it and immediately move to the next one
Flags: wanted1.9.0.x?
Comment on attachment 326536 [details] [diff] [review]
Check if accessible is still valid

a=shaver for landing on 1.9.0.x, please add a test as well.
Attachment #326536 - Flags: approval1.9.0.2? → approval1.9.0.2+
Checking in accessible/src/base/nsAccessible.cpp;
/cvsroot/mozilla/accessible/src/base/nsAccessible.cpp,v  <--  nsAccessible.cpp
new revision: 1.377; previous revision: 1.376
done
Keywords: fixed1.9.0.2
Flags: wanted1.9.0.x? → wanted1.9.0.x+
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: