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

Issue 1436683002: Making PageSerializer operate on single frames only. (Closed)

Created:
5 years, 1 month ago by Łukasz Anforowicz
Modified:
5 years, 1 month ago
Reviewers:
tkent, dcheng
CC:
blink-reviews, chromium-reviews, site-isolation-reviews_chromium.org, yosin_UTC9
Base URL:
https://chromium.googlesource.com/chromium/src.git@mhtml-removing-unused-code
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

OOPIFs: Making PageSerializer operate on single frames only. This CL makes PageSerializer safe wrt OOPIFs, by making it operate on single, local frames only. This CL moves iterating over all frames from PageSerializer into 1) WebPageSerializer.cpp and 2) PageSerializerTest.cpp. This is a preparatory step for a future CL that will need to move this iteration from WebPageSerializer.cpp into the browser process (this future CL will remove duplication of the iteration code between WebPageSerializer.cpp and PageSerializerTest.cpp). Changes made by this CL to WebPageSerializer.cpp use the more granular MHTMLArchive methods introduced by crrev.com/1415463007 (these methods allow generating snippets of MHTML for individual MHTML parts [i.e. frames or resources] rather than for the whole page / view). This in turn means that the non-granular MHTMLArchive::generateMHTMLData method is no longer called from product code. This method has been therefore removed from MHTMLArchive and inlined into the remaining test code that still needed this functionality. BUG=538766 Committed: https://crrev.com/6b9bf4d2319e2b36b54ac4663571a40bbfe06b94 Cr-Commit-Position: refs/heads/master@{#360631}

Patch Set 1 #

Total comments: 6

Patch Set 2 : Rebasing... #

Patch Set 3 : Addressed CR feedback from Daniel. #

Total comments: 8

Patch Set 4 : Rebasing... #

Patch Set 5 : Addressed 2nd round of CR feedback from Daniel. #

Total comments: 2

Patch Set 6 : Const-ref params in methods of PageSerializer. #

Patch Set 7 : Rebasing... #

Unified diffs Side-by-side diffs Delta from patch set Stats (+66 lines, -56 lines) Patch
M third_party/WebKit/Source/core/page/PageSerializer.h View 1 2 3 4 5 6 3 chunks +10 lines, -10 lines 0 comments Download
M third_party/WebKit/Source/core/page/PageSerializer.cpp View 1 2 3 4 5 6 4 chunks +7 lines, -19 lines 0 comments Download
M third_party/WebKit/Source/platform/mhtml/MHTMLArchive.h View 1 2 3 4 5 6 1 chunk +0 lines, -5 lines 0 comments Download
M third_party/WebKit/Source/platform/mhtml/MHTMLArchive.cpp View 1 2 3 4 5 6 1 chunk +0 lines, -17 lines 0 comments Download
M third_party/WebKit/Source/web/WebPageSerializer.cpp View 1 2 3 4 1 chunk +24 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/web/tests/MHTMLTest.cpp View 1 2 3 4 5 6 1 chunk +18 lines, -1 line 0 comments Download
M third_party/WebKit/Source/web/tests/PageSerializerTest.cpp View 1 2 3 4 5 6 3 chunks +7 lines, -2 lines 0 comments Download

Messages

Total messages: 27 (9 generated)
Łukasz Anforowicz
Daniel, could you please take a look?
5 years, 1 month ago (2015-11-12 02:12:06 UTC) #2
dcheng
https://codereview.chromium.org/1436683002/diff/1/third_party/WebKit/Source/core/page/PageSerializer.h File third_party/WebKit/Source/core/page/PageSerializer.h (right): https://codereview.chromium.org/1436683002/diff/1/third_party/WebKit/Source/core/page/PageSerializer.h#newcode80 third_party/WebKit/Source/core/page/PageSerializer.h:80: void serializeFrame(LocalFrame*); LocalFrame&. Calling this with a null frame ...
5 years, 1 month ago (2015-11-12 23:47:32 UTC) #3
Łukasz Anforowicz
Thanks Daniel. Can you take another look please? (OTOH, this is not a high-priority / ...
5 years, 1 month ago (2015-11-13 00:22:10 UTC) #4
dcheng
https://codereview.chromium.org/1436683002/diff/40001/third_party/WebKit/Source/web/WebPageSerializer.cpp File third_party/WebKit/Source/web/WebPageSerializer.cpp (right): https://codereview.chromium.org/1436683002/diff/40001/third_party/WebKit/Source/web/WebPageSerializer.cpp#newcode90 third_party/WebKit/Source/web/WebPageSerializer.cpp:90: HashSet<KURL> alreadySerializedUrls; How come we weren't previously deduping? https://codereview.chromium.org/1436683002/diff/40001/third_party/WebKit/Source/web/WebPageSerializer.cpp#newcode100 ...
5 years, 1 month ago (2015-11-18 03:27:12 UTC) #5
Łukasz Anforowicz
Daniel, can you take another look please? https://codereview.chromium.org/1436683002/diff/40001/third_party/WebKit/Source/web/WebPageSerializer.cpp File third_party/WebKit/Source/web/WebPageSerializer.cpp (right): https://codereview.chromium.org/1436683002/diff/40001/third_party/WebKit/Source/web/WebPageSerializer.cpp#newcode90 third_party/WebKit/Source/web/WebPageSerializer.cpp:90: HashSet<KURL> alreadySerializedUrls; ...
5 years, 1 month ago (2015-11-18 18:40:41 UTC) #6
Łukasz Anforowicz
Adding @yosin to CC - feel free to take a look / CR feedback is ...
5 years, 1 month ago (2015-11-18 18:41:51 UTC) #7
dcheng
lgtm
5 years, 1 month ago (2015-11-18 18:44:16 UTC) #8
Łukasz Anforowicz
tkent@, could you please take a look? (mostly at third_party/WebKit/Source/platform/mhtml/... changes - see the CL ...
5 years, 1 month ago (2015-11-18 18:58:25 UTC) #10
tkent
lgtm https://codereview.chromium.org/1436683002/diff/80001/third_party/WebKit/Source/core/page/PageSerializer.h File third_party/WebKit/Source/core/page/PageSerializer.h (right): https://codereview.chromium.org/1436683002/diff/80001/third_party/WebKit/Source/core/page/PageSerializer.h#newcode80 third_party/WebKit/Source/core/page/PageSerializer.h:80: void serializeFrame(LocalFrame&); nit: Can we change |LocalFrame&| to ...
5 years, 1 month ago (2015-11-18 22:32:55 UTC) #11
Łukasz Anforowicz
Thanks for reviewing. I think your LGTM should stay, but please note that in the ...
5 years, 1 month ago (2015-11-18 23:27:41 UTC) #12
tkent
still LGTM!
5 years, 1 month ago (2015-11-19 03:38:56 UTC) #13
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1436683002/100001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1436683002/100001
5 years, 1 month ago (2015-11-19 03:57:08 UTC) #15
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
5 years, 1 month ago (2015-11-19 04:47:58 UTC) #17
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1436683002/100001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1436683002/100001
5 years, 1 month ago (2015-11-19 16:06:34 UTC) #20
commit-bot: I haz the power
Try jobs failed on following builders: chromium_presubmit on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/chromium_presubmit/builds/120220)
5 years, 1 month ago (2015-11-19 16:25:38 UTC) #22
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1436683002/120001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1436683002/120001
5 years, 1 month ago (2015-11-19 17:18:35 UTC) #25
commit-bot: I haz the power
Committed patchset #7 (id:120001)
5 years, 1 month ago (2015-11-19 18:36:56 UTC) #26
commit-bot: I haz the power
5 years, 1 month ago (2015-11-19 18:37:56 UTC) #27
Message was sent while issue was closed.
Patchset 7 (id:??) landed as
https://crrev.com/6b9bf4d2319e2b36b54ac4663571a40bbfe06b94
Cr-Commit-Position: refs/heads/master@{#360631}

Powered by Google App Engine
This is Rietveld 408576698