Closed
Bug 251969
Opened 21 years ago
Closed 21 years ago
FF10PR1 M17x crash [@ nsHttpChannel::OnStopRequest ]
Categories
(Core :: Networking: HTTP, defect)
Tracking
()
RESOLVED
FIXED
mozilla1.8beta1
People
(Reporter: aha, Assigned: darin.moz)
References
Details
(4 keywords)
Crash Data
Attachments
(2 files)
1.55 KB,
patch
|
timeless
:
review+
bzbarsky
:
superreview+
|
Details | Diff | Splinter Review |
2.25 KB,
patch
|
dveditz
:
review+
dveditz
:
superreview+
asa
:
approval-aviary+
dveditz
:
approval1.7.5+
|
Details | Diff | Splinter Review |
I met this crash while submitting two forms in different tabs (1.7/W2K). One of
them was successfully finished, data was sent on server, second was just search...
TalkBack server has info about 120 crashes across M17, Trunk, Ff and Tb with
this signature:
http://talkback-public.mozilla.org/talkback/fastfind.jsp?search=1&searchby=stacksig&match=contains&searchfor=nsHttpChannel%3A%3AOnStopRequest
I can't find any open/fixed bug with this signature.
TB355155 (my crash):
0x65757274
nsHttpChannel::OnStopRequest
[d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/netwerk/protocol/http/src/nsHttpChannel.cpp,
line 3535]
nsInputStreamPump::OnStateStop
[d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/netwerk/base/src/nsInputStreamPump.cpp,
line 499]
nsInputStreamPump::OnInputStreamReady
[d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/netwerk/base/src/nsInputStreamPump.cpp,
line 340]
nsInputStreamReadyEvent::EventHandler
[d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/xpcom/io/nsStreamUtils.cpp,
line 215]
PL_HandleEvent
[d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/xpcom/threads/plevent.c,
line 674]
PL_ProcessPendingEvents
[d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/xpcom/threads/plevent.c,
line 612]
_md_EventReceiverProc
[d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/xpcom/threads/plevent.c,
line 1415]
nsAppShellService::Run
[d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/xpfe/appshell/src/nsAppShellService.cpp,
line 524]
main1
[d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/xpfe/bootstrap/nsAppRunner.cpp,
line 1313]
main
[d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/xpfe/bootstrap/nsAppRunner.cpp,
line 1783]
WinMain
[d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/xpfe/bootstrap/nsAppRunner.cpp,
line 1809]
WinMainCRTStartup()
KERNEL32.DLL + 0x11af6 (0x7c581af6)
Assignee | ||
Updated•21 years ago
|
Target Milestone: --- → mozilla1.8beta
Comment 1•21 years ago
|
||
Assignee | ||
Comment 3•21 years ago
|
||
This patch may fix the crash.
I believe the problem is caused by the NS_RELEASE(mConnection) that occurs
inside nsHttpTransaction::Close, which can run on the socket transport thread.
As a result, the code in nsHttpChannel::OnStopRequest can get into trouble when
it tries to access mTransaction's mConnection variable.
nsHttpTransaction::Close keeps mConnection around if the STICKY_CONNECTION flag
was set at initialization time. So, this patch checks for that flag, and only
tries to access mConnection if that flag is set.
Comment on attachment 159643 [details] [diff] [review]
v1 patch
this works
Attachment #159643 -
Flags: review+
Assignee | ||
Updated•21 years ago
|
Attachment #159643 -
Flags: superreview?(bzbarsky)
![]() |
||
Comment 5•21 years ago
|
||
Comment on attachment 159643 [details] [diff] [review]
v1 patch
sr=bzbarsky
Attachment #159643 -
Flags: superreview?(bzbarsky) → superreview+
Assignee | ||
Comment 6•21 years ago
|
||
fixed-on-trunk
Status: NEW → RESOLVED
Closed: 21 years ago
Resolution: --- → FIXED
Assignee | ||
Comment 7•21 years ago
|
||
Thanks to dveditz for asking questions about this patch. Together we found
another edge case that could still trigger the crash. By not testing the value
of |status|, we could end up accessing the connection when it was not saved.
nsHttpTransaction::Close closes the connection if |status| is a failure code.
This patch also adds more documentation.
Assignee | ||
Updated•21 years ago
|
Attachment #159883 -
Flags: review?(dveditz)
Assignee | ||
Comment 8•21 years ago
|
||
I realized after checking in this patch on the trunk that I had done so on a
frozen trunk. Oops! :(
I will ask drivers for 1.8a4 approval.
Comment 9•21 years ago
|
||
Comment on attachment 159883 [details] [diff] [review]
v2 followup patch
>- if (mCaps & NS_HTTP_STICKY_CONNECTION)
>+ if (authRetry && (mCaps & NS_HTTP_STICKY_CONNECTION))
This is the only real difference between v1 and v2 (to catch a potential, but
we think improbable, problem if Close() was called with a failing status). The
rest is comment and a new var for code clarity. I think it's fair to carry over
r= and grant sr=dveditz
And since my original involvement was an a= request, a=dveditz for the 1.7.x
branch. Please add the fixed1.7.x keyword when this is checked in to the
branch.
Attachment #159883 -
Flags: superreview+
Attachment #159883 -
Flags: review?(dveditz)
Attachment #159883 -
Flags: review+
Attachment #159883 -
Flags: approval1.7.x+
Assignee | ||
Comment 10•21 years ago
|
||
Comment on attachment 159883 [details] [diff] [review]
v2 followup patch
need this on aviary too
Attachment #159883 -
Flags: approval-aviary?
Assignee | ||
Comment 11•21 years ago
|
||
v2 patch fixed-on-trunk
Comment 13•21 years ago
|
||
Adding FF10PR1 and M17x so summary for tracking.
Summary: crash [@ nsHttpChannel::OnStopRequest ] → FF10PR1 M17x crash [@ nsHttpChannel::OnStopRequest ]
Comment 14•21 years ago
|
||
Comment on attachment 159883 [details] [diff] [review]
v2 followup patch
a=asa for aviary checkin.
Attachment #159883 -
Flags: approval-aviary? → approval-aviary+
Assignee | ||
Comment 16•20 years ago
|
||
*** Bug 257639 has been marked as a duplicate of this bug. ***
Updated•14 years ago
|
Crash Signature: [@ nsHttpChannel::OnStopRequest ]
You need to log in
before you can comment on or make changes to this bug.
Description
•