Closed Bug 87370 Opened 23 years ago Closed 23 years ago

Multipart documents do not always fire the OnStopRequest

Categories

(Core :: Networking, defect, P1)

x86
Windows NT
defect

Tracking

()

RESOLVED FIXED
mozilla0.9.3

People

(Reporter: kmcclusk, Assigned: rpotts)

References

()

Details

(Whiteboard: patch ready, need a=)

Attachments

(4 files)

To reproduce:

Go to
http://bugzilla.mozilla.org/query.cgi

enter Mozilla0.9.2 as the target milestone
then submit query.

The nsParser listener's OnStopRequest is called once. It is not called for the 
second document. Tracing into the nsMultiMixedConv implementation the 
mPartChannel is null when the second call to nsMultiMixedConv::OnStopRequest is 
made so it does not pass the OnStopRequest over to the parser.



NS_IMETHODIMP
nsMultiMixedConv::OnStopRequest(nsIRequest *request, nsISupports *ctxt,
                                nsresult aStatus) {

  ...

    if (mPartChannel) {  <== this is null for some reason
Severity: normal → blocker
This bug is blocks 76722, because with the patch enabled in bug 76722 the 
throbber will spin forever on Mozilla queries because the OnStopRequest for the 
second document is never called.
Blocks: 76722
This bug also blocks ( I think ) bug 49539.

I think the patch in bug 70398 should do the trick.
scott, this is the patch that harishd and I spoke to you on the phone last week 
about.  It basically removes that Bool that prevents multiple onStopRequests 
from the URILoader.  Can I get a SR from your?

Rick, please review this for a r=?


Kevin, when is this needed by?  0.9.3?
Status: NEW → ASSIGNED
I need it for 0.9.3 so I can enable the patch in bug 76722 for 0.9.3. 
Whiteboard: patch ready, need r=,sr=,a=
Target Milestone: --- → mozilla0.9.3
Priority: -- → P1
I have been running with patch 39919 and it fixes the "throbber never stops
spinning" issue that is blocking 76722
kevin, can you reproduce 84774?
patch, id 39919, looks good to me. r=harishd
sr=mscott
patch 39919 fixes bug 84774

fix checked in:

Checking in nsURILoader.cpp;
/cvsroot/mozilla/uriloader/base/nsURILoader.cpp,v  <--  nsURILoader.cpp
new revision: 1.79; previous revision: 1.78
done
Status: ASSIGNED → RESOLVED
Closed: 23 years ago
Resolution: --- → FIXED
hey doug,

your patch introduces a possible re-enterent call of OnStopRequest(...) which
mOnSgtopFired was preventing :-(

I'm attaching a patch which handles this situation.

-- rick
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
sr=mscott on rick's patch
I'm also talking with mscott about the ramifications of removing the early
return from ProcessCanceledCase(...).

Currently, we will *not* call OnStopRequest(...) if the channel ends up being
canceled :-( I believe that this is *very* bad because the consumer expects to
always be called!
yes, that is really bad!  what can be done about it?
your patch 43077 looks okay r=dougt
So, after talking it over with mscott, we both agreed that calling
ProcessCanceledCase(..) inside of OnStopRequest(...) was unnecessary/bad.

Since it will still be called in OnStartRequest(...) the situation caused by bug
#40116 (which the code was added for) will still be handled correctly.

So, i'm attaching a new patch (if you liked the last one you'll love this one)
which also removes the call to ProcessCanceledCase(...) in OnStopRequest.
-> rpotts.  since I have the patch :-)
Assignee: dougt → rpotts
Status: REOPENED → NEW
r=dougt
I've just checked the patch (40400) into the trunk...  I'm just waiting to check
in into the branch too.
Whiteboard: patch ready, need r=,sr=,a= → patch ready, need a=
I forgot to mention that I have verified that bug #40116 has not been
re-introduced by removing the call to ProcessCanceledCase() from OnStopRequest(...).

I did this by placing a breakpoint in ProcessCanceledCase() and going back and
forth on http://news.bbc.co.uk/ until I hit the breakpoint...  Then, I verified
that we didn't crash :-)

--rick
sr=mscott
Blocks: 87739
a=choffman

I've just landed both patches (dougt and mine) onto the branch.
Status: NEW → RESOLVED
Closed: 23 years ago23 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: