New issue
Advanced search Search tips

Issue 659307 link

Starred by 2 users

Issue metadata

Status: WontFix
Owner: ----
Closed: May 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug

Blocked on:
issue 659313
issue 659317
issue 659319



Sign in to add a comment

Delaying destruction of the ResourceHandler stack causes problems.

Project Member Reported by mmenke@chromium.org, Oct 25 2016

Issue description

The AsnycResourceHandler in the ResourceHandler stack can cancel a request at any time.  Any ResourceHandler can defer most operations (including completion).

This creates two problematic cases:
1)  If ResourceHandler A defers a request and then ResourceHandler B cancels it, and ResourceHandler C (Which may be the same as B) defers the cancellation, and then A resumes the request (As it hasn't seen the cancellation yet), then the ResourceLoader will think it was ResourceHandler C that resumed the operation, which can result in Bad Things.
2)  Similarly, if one ResourceHandler cancels a request, destruction is deferred, and then another cancels the request, the ResourceLoader will call ResourceLoader::ResponseCompleted twice, again resulting in Bad Things.

After some discussion, we've decided the best way to handle (In terms of time to implement and complexity) this is to separate out cancellation from errors/successful completion in the ResourceLoader stack.  The only ResourceHandler that needs to defer completion is the RedirectToFileResourceHandler, and on cancellation, it makes sense to just discard whatever data's being written to the file, since something cancelled the request, so partial data won't be useful, anyways.
 

Comment 1 by mmenke@chromium.org, Oct 25 2016

 Issue 651107  has been merged into this issue.

Comment 2 by mmenke@chromium.org, Oct 25 2016

Blockedon: 659313

Comment 3 by mmenke@chromium.org, Oct 25 2016

Blockedon: 659317

Comment 4 by mmenke@chromium.org, Oct 25 2016

Blockedon: 659319
Project Member

Comment 5 by sheriffbot@chromium.org, Oct 26 2017

Labels: Hotlist-Recharge-Cold
Status: Untriaged (was: Available)
This issue has been Available for over a year. If it's no longer important or seems unlikely to be fixed, please consider closing it out. If it is important, please re-triage the issue.

Sorry for the inconvenience if the bug really should have been left as Available. If you change it back, also remove the "Hotlist-Recharge-Cold" label.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Labels: -Hotlist-Recharge-Cold
Status: Available (was: Untriaged)
Cc: -rdsmith@chromium.org

Comment 8 by mmenke@chromium.org, May 16 2018

Status: WontFix (was: Available)

Sign in to add a comment