Closed Bug 608445 Opened 15 years ago Closed 15 years ago

Hang after key click on about:* pages

Categories

(Firefox for Android Graveyard :: General, defect)

All
Linux
defect
Not set
major

Tracking

(Not tracked)

VERIFIED FIXED

People

(Reporter: azakai, Assigned: azakai)

References

Details

Attachments

(1 file, 1 obsolete file)

1. Start Fennec 2. Click inside the about:home page (or, about:memory, about:config, etc.). 3. Alt-tab to another application, then alt-tab back. Result: Fennec is completely unresponsive, CPU is at 100%, Fennec does not repaint its window. Breaking in a debugger at this point shows various stack traces - no obvious culprit here. Seen on Linux desktop. (Not sure how to test this on a device - what is the equivalent of 'alt-tab'-ing away?)
Note : 1) On Android : home button 2) On Maemo : hitting the icon in the upper left hand corner will get you out of the app while the app is still running in the background. I noticed something similar while regressing bug 603680 on maemo.
tracking-fennec: --- → ?
Severity: normal → major
Simpler steps: 1. Start Fennec 2. Click inside the about:home page (or, about:memory, about:config, etc.). 3. **Press a key (e.g. space)** - different from before The hang begins when the key is clicked. Note, as mentioned above, that this does not occur if you do not click the mouse first in the page.
Summary: Hang after clicking on about:* and switching to another app → Hang after key click on about:* pages
Attached patch patch (obsolete) — Splinter Review
Bug was, that doing utils.sendKeyEvent(json.type, json.keyCode, json.charCode, modifiers); will send a key event to the child. In the case of a local page, this leads to an infinite loop. Fix is to not send the unneeded key event if the page is local. I don't think the change breaks anything - key presses still work on about:config, for example. Anything else to test?
Attachment #487460 - Flags: review?(mark.finkle)
Assignee: nobody → azakai
Comment on attachment 487460 [details] [diff] [review] patch >+ if (!Util.isLocalScheme(content.document.URL)) I would use "if (Util.isParentProcess())" instead. By the way, thank you so much for finding and fixing this!
Attached patch patch v2Splinter Review
Cool, made the patch do it that way.
Attachment #487460 - Attachment is obsolete: true
Attachment #487463 - Flags: review?(mark.finkle)
Attachment #487460 - Flags: review?(mark.finkle)
Attachment #487463 - Flags: review?(mark.finkle) → review+
Status: NEW → RESOLVED
Closed: 15 years ago
Resolution: --- → FIXED
verified fixed on: Mozilla/5.0(Android; Linux armv7l;rv2.0b8pre) Gecko/20101102 Firefox/4.0b8pre Fennec/4.0b3pre AND Mozilla/5.0(Maemo; Linux armv7l;rv2.0b8pre) Gecko/20101102 Firefox/4.0b8pre Fennec/4.0b3pre
Status: RESOLVED → VERIFIED
tracking-fennec: ? → ---
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: