Closed Bug 108267 Opened 23 years ago Closed 23 years ago

scale back NS_BINDING_REDIRECTED proliferation

Categories

(Core :: Networking, defect, P2)

defect

Tracking

()

RESOLVED FIXED
mozilla0.9.6

People

(Reporter: darin.moz, Assigned: darin.moz)

References

Details

(Keywords: arch)

Attachments

(2 files, 1 obsolete file)

the changes to cache http redirects resulted in fixing an apparent regression. the nsIStreamListener passed to nsIChannel::AsyncOpen was supposed to have its OnStartRequest and OnStopRequest methods called when a channel got redirected. the redirected channel's status would be NS_BINDING_REDIRECTED. however, this was not happening, so it was fixed. unfortunately, this broke a lot of stuff. the stream loader, downloader, image loader, and uri loader all needed to become aware of NS_BINDING_REDIRECTED. now we have a bunch of stream listener implementations that check for NS_BINDING_REDIRECT and return early, expecting to be called later when the new channel becomes active. however, these are the only uses of this status code. so it seems that stream listeners perhaps should not be notified in this way... that they should simply not get an OnStartRequest until the new channel provides it. this would simply consumers and likely fix a bunch of regression bugs that still remain. load groups observers would still have OnStopRequest called with NS_BINDING_REDIRECTED when the redirected channel gets removed from the load group. and the redirected channel's state will be NS_BINDING_REDIRECTED, but the redirected channel's stream listener will not be notified of the redirect.
Severity: normal → major
Keywords: arch
Priority: -- → P2
Target Milestone: --- → mozilla0.9.7
Status: NEW → ASSIGNED
-> 0.9.6 (hopefully)
Target Milestone: mozilla0.9.7 → mozilla0.9.6
I think this is affecting bug 105395, where double OnStartRequests() leads to double rendering in layout, storage and restoration of LayoutHistoryState() done twice, and eventually scrollbar positions, form values stored during the first time are lost by the subsequent run.
Blocks: 105395
Attached patch v1.0 (deleted) — Splinter Review
this patch just makes http stop sending out the extra OnStart/OnStopRequest pair.
Attached patch v1.1 take two (deleted) — Splinter Review
Attachment #56650 - Attachment is obsolete: true
Comment on attachment 56651 [details] [diff] [review] v1.1 take two r=gagan
Attachment #56651 - Flags: review+
Attachment #56651 - Flags: superreview+
*** Bug 107173 has been marked as a duplicate of this bug. ***
fixed-on-trunk
Status: ASSIGNED → RESOLVED
Closed: 23 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: