Closed Bug 167038 Opened 22 years ago Closed 22 years ago

[FIX]crash when going back to previous page (using keyboard: ALT + left arrow) [@ nsEventStateManager::HandleAccessKey ]

Categories

(Core :: DOM: UI Events & Focus Handling, defect, P1)

x86
All
defect

Tracking

()

VERIFIED FIXED
mozilla1.2alpha

People

(Reporter: per.angstrom, Assigned: bzbarsky)

References

()

Details

(4 keywords)

Crash Data

Attachments

(2 files)

User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2a) Gecko/20020905 Build Identifier: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2a) Gecko/20020905 If I open the URL and try to go back to the previous page, using the keyboard: ALT + left arrow), Mozilla will crash. It doesn't seem to happen if I use the back button. Reproducible: Always Steps to Reproduce: 1. Open the URL. 2. Press ALT + left arrow. Actual Results: Mozilla will crash. Expected Results: The previous page in the session history should be displayed. I have only seen the problem on this specific URL. First seen in build 20020904 for Linux. Also seen in build 20020904 for Windows. No problem in Netscape 7 for Linux. No error message on console. Regarding Talkback, I think I need some education: I have sent a couple of reports using the Quality Feedback Agent - is that the same thing as Talkback, and how do I get a Talkback ID that I can report in this forum?
Please post Talkback ID for these crash via 'mozilla/bin/components/talkback/talkback' on Linux or 'mozilla/bin/components/talkback.exe' on Windows.
Keywords: crash, stackwanted
The Linux crash has ID TB10468672E. The Windows crash has ID TB10468815Q.
Confirmed 2002090415 on WinNT4: TB10470151G TB10470241E
Confirming on Windows XP, build 2002090604.
Status: UNCONFIRMED → NEW
Ever confirmed: true
Attached file Stacktrace on Linux (deleted) —
Stacktrace from cvs trunk on Linux. Pressed ALT and left arrow on the page.
Seems to be a regression as I don't crash with Linux build 20020904.
Assignee: radha → joki
Component: History: Session → Event Handling
Keywords: stackwantedregression
QA Contact: claudius → rakeshmishra
Summary: crash when going back to previous page (using keyboard: ALT + left arrow) → crash when going back to previous page (using keyboard: ALT + left arrow) [@ nsEventStateManager::HandleAccessKey ]
Possible checkins: bug 141295. CC'ing people who produced the patch.
fix for bug 141295 was checked in on Sep 5th and, per comment 3, build 20020904 crashes. Culprit checkin rather seems to be bug 129808. CC'ing more people (sorry for the spam), leaving bryner as he gave r= to above fix for bug 141295.
Adding testcase and topcrash+ keywords since people have been able to reproduce this. Also making this a zt4newcrash bug since we know it is a regression (according to Talkback data, this crash was introduced with 9/3 MozillaTrunk builds).
*** Bug 167192 has been marked as a duplicate of this bug. ***
Duped bug 167192 has a recent stack trace and user comments if anyone needs to take a look.
This blocks 1.2a. We need something quickly.
Blocks: 1.2a
Attached patch fix (deleted) — Splinter Review
Add null check and some assertions.
Attachment #98236 - Flags: superreview+
taking
Assignee: joki → bzbarsky
Priority: -- → P1
Summary: crash when going back to previous page (using keyboard: ALT + left arrow) [@ nsEventStateManager::HandleAccessKey ] → [FIX]crash when going back to previous page (using keyboard: ALT + left arrow) [@ nsEventStateManager::HandleAccessKey ]
Target Milestone: --- → mozilla1.2alpha
Comment on attachment 98236 [details] [diff] [review] fix >Index: content/events/src/nsEventStateManager.cpp >=================================================================== > >+ // Docshells need not have a presshell (eg. display:none >+ // iframes, docshells in transition between documents, etc). >+ if (!subPS) { >+ // Just move on to the next child "If this is the case, just ..." >+ continue; >+ } >+ >@@ -1037,12 +1045,14 @@ > nsCOMPtr<nsIPresShell> parentPS; > nsCOMPtr<nsIPresContext> parentPC; > nsCOMPtr<nsIEventStateManager> parentESM; > > parentDS->GetPresShell(getter_AddRefs(parentPS)); >+ NS_ASSERTION(parentPS, "Out presshell exists but the parent's does not?"); s/Out/Our/ r=caillon
Attachment #98236 - Flags: review+
Comment on attachment 98236 [details] [diff] [review] fix One more nit: Two of your assertions use "PresShell" and one uses "presshell". Pick one :-)
fixed.
Status: NEW → RESOLVED
Closed: 22 years ago
Resolution: --- → FIXED
Confirming. WFM in build 20020906-22 on Linux.
QA Contact: rakeshmishra → trix
verified on trunk build 2002122708
Status: RESOLVED → VERIFIED
Crash Signature: [@ nsEventStateManager::HandleAccessKey ]
Component: Event Handling → User events and focus handling
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: