Closed Bug 299008 Opened 21 years ago Closed 21 years ago

Going back from a XUL error page does not restore form data

Categories

(Core :: DOM: Navigation, defect, P1)

defect

Tracking

()

RESOLVED FIXED
mozilla1.8beta2

People

(Reporter: bugs.caleb, Assigned: Biesinger)

Details

(Keywords: dataloss, regression, Whiteboard: [bs] has patch (biesi), needs review (jst or bryner))

Attachments

(1 file, 1 obsolete file)

It seems that if you type something in a text field (this probably affects other form elements aswell), go to an invalid website, and then press back and the text is lost! This seems to affect both XML parser errors, and XUL error pages. To reproduce: 1. Open this page https://bugzilla.mozilla.org/show_bug.cgi?id=295732 2. Type anything in the "Additional Comments:" textarea 3. Type blagasfasdfasdfasdf.com in the address bar and press Enter 4. Press back, and the text is gone! Note: Step 3 results in an XML error, but it should result in a XUL error page (this is a "bug" with the XUL error pages - missing description of an error or such).
Flags: blocking1.8b4?
Flags: blocking1.8b3?
Severity: normal → critical
OS: Windows XP → All
(In reply to comment #0) > It seems that if you type something in a text field (this probably affects other > form elements aswell), go to an invalid website, and then press back and the > text is lost! > > This seems to affect both XML parser errors, and XUL error pages. > > To reproduce: > 1. Open this page https://bugzilla.mozilla.org/show_bug.cgi?id=295732 > 2. Type anything in the "Additional Comments:" textarea > 3. Type blagasfasdfasdfasdf.com in the address bar and press Enter > 4. Press back, and the text is gone! > > Note: Step 3 results in an XML error, but it should result in a XUL error page > (this is a "bug" with the XUL error pages - missing description of an error or > such). Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8b2) Gecko/20050628 Maimedbat Firefox/1.0+ Same result when tested on this build.
Flags: blocking1.8b3? → blocking1.8b3+
Whiteboard: [cb] regression. needs investigation.
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8b2) Gecko/20050628 Firefox/1.0+ ID:2005062808 Testing with a new build that fixes the XML error (now a XUL error page shows up at step 3). Note: Bfcache/fastback is _DISABLED_!
Assignee: adamlock → bryner
I see the behavior described in comment 0 as far back as 20050201 on the trunk. Will test further.
Regression range: Between 2005-01-30 08:00 and 2005-01-31 07:00 http://bonsai.mozilla.org/cvsquery.cgi?treeid=default&module=PhoenixTinderbox&branch=HEAD&branchtype=match&dir=&file=&filetype=match&who=&whotype=match&sortby=Date&hours=2&date=explicit&mindate=2005-01-30+08%3A00&maxdate=2005-01-31+07%3A00&cvsroot=%2Fcvsroot Bug 157004 fixed the fact that you had to reload an error page to go back to the previous page using the back button, but it apparently caused this bug.
Flags: blocking1.8b4?
Keywords: regression
biesi, can you take a look please?
Assignee: bryner → cbiesinger
Priority: -- → P1
Target Milestone: --- → mozilla1.8beta2
I do not see this on a page with XML parse errors, only on an error page. Testcase: type something in this bug's additional comment field, load data:text/xml,asdf, click back -- text is still there.
Summary: Going back from a XUL error page/XML error results in data loss → Going back from a XUL error page does not restore form data
Attached patch patch (obsolete) — Splinter Review
What's going on is this: Embed saves the form data on the docshell's current mOSHE. Embed is called when the document starts loading, which is some time after LoadErrorPage. But LoadErrorPage overwrote mOSHE with mLSHE, which means that the form data was stored on the error page's SH entry. With this patch, mOSHE gets its new value in Embed.
Attachment #187582 - Flags: review?(jst)
Hardware: PC → All
Whiteboard: [cb] regression. needs investigation. → [bs] has patch (biesi), needs review (jst or bryner)
Status: NEW → ASSIGNED
Comment on attachment 187582 [details] [diff] [review] patch r=jst, but I'd love to have either bz or darin look at this too.
Attachment #187582 - Flags: superreview?(bzbarsky)
Attachment #187582 - Flags: review?(jst)
Attachment #187582 - Flags: review+
Comment on attachment 187582 [details] [diff] [review] patch sr=bzbarsky if everything (page titles, etc) is still happy.
Attachment #187582 - Flags: superreview?(bzbarsky) → superreview+
Attachment #187582 - Flags: approval1.8b3?
Attachment #187582 - Flags: approval1.8b3? → approval1.8b3+
After applying the patch: * Going back from the XUL error page restores the title, etc.. * The "Try Again" button in the error page re-loads the previous page, and not the current operation.
(In reply to comment #10) > After applying the patch: > > * Going back from the XUL error page restores the title, etc.. > * The "Try Again" button in the error page re-loads the previous page, and not > the current operation. > Oh, forgot to mention that it DOES fix this bug.
Attachment #187582 - Flags: approval1.8b3+ → approval1.8b3?
I think the page title comment was more about shistory entries... that the title bar etc show the right title is really no surprise, that uses different mechanisms.
Comment on attachment 187582 [details] [diff] [review] patch hm, yeah. try again does reload the wrong page... history titles are correct though. Odd... try again and reload now do different things...
Attachment #187582 - Attachment is obsolete: true
Attached patch fix try againSplinter Review
The mLSHE that referred to the real page load was cleared in InternalLoad; this patch makes it so that it doesn't get cleared and that thus mOSHE will eventually refer to the right page.
Attachment #188111 - Flags: superreview?(bzbarsky)
Attachment #188111 - Flags: review?(jst)
Comment on attachment 188111 [details] [diff] [review] fix try again sr=bzbarsky, but file a followup bug on checking out geneneral interaction of bfcache and error pages, ok? I suspect they don't play nice with each other.
Attachment #188111 - Flags: superreview?(bzbarsky) → superreview+
(In reply to comment #14) > Created an attachment (id=188111) [edit] > fix try again After applying this patch: 1. Go to http://www.betanews.com and wait for it to completely load 2. Type anything in the "search" box on the top-left part of the page 3. Go to http://asjfdaskfhaskjhfkahfhkajhfaksjdfh.com or just show a xul error page 4. Go back Results: * With bfcache: the form elemnt is emptied (dataloss) * Without bfcache: the form element is kept intact I'd like a confirmation on this!
I'd like to leave bfcache issues to bug 299547. it's not like I know the code..
Comment on attachment 188111 [details] [diff] [review] fix try again r=jst
Attachment #188111 - Flags: review?(jst) → review+
Comment on attachment 188111 [details] [diff] [review] fix try again this patch makes sure that form info is stored on the right history entry, so that it can successfully be restored.
Attachment #188111 - Flags: approval1.8b3?
Comment on attachment 188111 [details] [diff] [review] fix try again a=bsmedberg for expeditious landing. If this doesn't make the nightlies tomorrow morning, please check with me or cbeard.
Attachment #188111 - Flags: approval1.8b3? → approval1.8b3+
Checking in docshell/base/nsDocShell.cpp; /cvsroot/mozilla/docshell/base/nsDocShell.cpp,v <-- nsDocShell.cpp new revision: 1.697; previous revision: 1.696 done should be in time for the nightlies, I assume.
Status: ASSIGNED → RESOLVED
Closed: 21 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: