Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(431)

Issue 2210473002: Mark ResourceClient/ImageResourceObserver finished just before notifying (Closed)

Created:
4 years, 4 months ago by hiroshige
Modified:
4 years, 3 months ago
Reviewers:
Nate Chapin, yhirano
CC:
chromium-reviews, tyoshino+watch_chromium.org, Yoav Weiss, gavinp+loader_chromium.org, blink-reviews, loading-reviews+fetch_chromium.org, Nate Chapin
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Mark ResourceClient/ImageResourceObserver finished just before notifying Previously, all clients (except for awaiting ones) and observers are marked finished just after checkNotify() is called. However, it is possible that we have clients in |m_client| newly added during ResourceClient::notifyFinished(), and such new clients shouldn't be marked finished without calling notifyFinished(). This CL marks a client/observer just before notifyFinished()/ imageNotifyFinished() is called for the client/observer, and removes markClientsAndObserversFinished() methods. This CL also introduces MarkFinishedOption for checkNotify() for multipart images: In multipart images we call notifyFinished()/imageNotifyFinished() without marking clients/observers finished when the first part ends. BUG=633696 Committed: https://crrev.com/62bb97b2652c495598942879e66bd7f1a5dbb918 Cr-Commit-Position: refs/heads/master@{#414423}

Patch Set 1 #

Patch Set 2 : Multipart #

Patch Set 3 : Refactor #

Patch Set 4 : Refactor #

Patch Set 5 : tests #

Total comments: 16

Patch Set 6 : Rebase #

Patch Set 7 : Reflect comments #

Total comments: 2

Patch Set 8 : Wrap by 80 cols and Rebase. #

Messages

Total messages: 38 (26 generated)
hiroshige
PTAL. Probably this should be merged into M-52 (stable), but not so sure this CL ...
4 years, 4 months ago (2016-08-03 19:36:51 UTC) #7
hiroshige
+japhet@, could you also take a look as a core/fetch OWNER? The issue is regression ...
4 years, 4 months ago (2016-08-04 15:33:40 UTC) #17
Nate Chapin
LGTM. I'm ok with this getting merged to M-52, but I find this enum value ...
4 years, 4 months ago (2016-08-09 00:05:00 UTC) #18
yhirano
Is it possible / desirable to 1. Keep the checkNotify interface 2. Mark clients as ...
4 years, 4 months ago (2016-08-09 09:35:59 UTC) #19
hiroshige
> but I find this enum value > difficult to reason about, and I'd ideally ...
4 years, 4 months ago (2016-08-09 10:23:55 UTC) #20
hiroshige
Reflected yhirano@'s comments. Patch Set 7 keeps checkNotify() interface and introduces notifyClients/ObserversInternal() in order to ...
4 years, 4 months ago (2016-08-10 06:03:08 UTC) #21
yhirano
lgtm https://codereview.chromium.org/2210473002/diff/120001/third_party/WebKit/LayoutTests/http/tests/cache/xmlhttprequest-onload-event-for-failed-revalidation.html File third_party/WebKit/LayoutTests/http/tests/cache/xmlhttprequest-onload-event-for-failed-revalidation.html (right): https://codereview.chromium.org/2210473002/diff/120001/third_party/WebKit/LayoutTests/http/tests/cache/xmlhttprequest-onload-event-for-failed-revalidation.html#newcode7 third_party/WebKit/LayoutTests/http/tests/cache/xmlhttprequest-onload-event-for-failed-revalidation.html:7: const url = 'resources/etag-200.php?' + Math.floor(100000000 * Math.random()); ...
4 years, 4 months ago (2016-08-10 06:13:50 UTC) #22
hiroshige
japhet@, could you take a look again? (Changes after Patch Set 5: https://codereview.chromium.org/2210473002/#msg21)
4 years, 4 months ago (2016-08-10 13:54:14 UTC) #23
hiroshige
https://codereview.chromium.org/2210473002/diff/120001/third_party/WebKit/LayoutTests/http/tests/cache/xmlhttprequest-onload-event-for-failed-revalidation.html File third_party/WebKit/LayoutTests/http/tests/cache/xmlhttprequest-onload-event-for-failed-revalidation.html (right): https://codereview.chromium.org/2210473002/diff/120001/third_party/WebKit/LayoutTests/http/tests/cache/xmlhttprequest-onload-event-for-failed-revalidation.html#newcode7 third_party/WebKit/LayoutTests/http/tests/cache/xmlhttprequest-onload-event-for-failed-revalidation.html:7: const url = 'resources/etag-200.php?' + Math.floor(100000000 * Math.random()); On ...
4 years, 4 months ago (2016-08-23 10:35:07 UTC) #28
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2210473002/140001
4 years, 3 months ago (2016-08-25 12:28:58 UTC) #34
commit-bot: I haz the power
Committed patchset #8 (id:140001)
4 years, 3 months ago (2016-08-25 13:56:54 UTC) #36
commit-bot: I haz the power
4 years, 3 months ago (2016-08-25 13:58:54 UTC) #38
Message was sent while issue was closed.
Patchset 8 (id:??) landed as
https://crrev.com/62bb97b2652c495598942879e66bd7f1a5dbb918
Cr-Commit-Position: refs/heads/master@{#414423}

Powered by Google App Engine
This is Rietveld 408576698