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

Issue 625583002: Properly suspend HTMLDocumentParser (Closed)

Created:
6 years, 2 months ago by João Eiras
Modified:
6 years ago
CC:
blink-reviews, dglazkov+blink, blink-reviews-html_chromium.org, oystein (OOO til 10th of July)
Base URL:
https://chromium.googlesource.com/chromium/blink.git@master
Project:
blink
Visibility:
Public.

Description

Properly suspend HTMLDocumentParser When an ExecutionContext was suspended, the HTMLDocumentParser could still handle parsed chunks, incrementaly build the tree, trigger resource loads, and build iframes with new clean ExecutionContexts which were not suspended, therefore triggering ASSERT(m_suspended) inside SuspendableTimer. Also moved some Document specific code from ScopedPageLoadDeferrer to FrameLoader, where it logically feels better so it's more related to the defersLoading state handling, and so it makes the Page to FrameHost migration easier. BUG=418116 Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=186256

Patch Set 1 #

Patch Set 2 : Better version of the fix #

Patch Set 3 : Fixed wrong method called #

Total comments: 8

Patch Set 4 : Comments #

Patch Set 5 : rebase #

Patch Set 6 : Added tests #

Patch Set 7 : fixed file names #

Patch Set 8 : better way to call m_parserScheduler->resume #

Total comments: 5

Patch Set 9 : remote tcs #

Patch Set 10 : rebase #

Unified diffs Side-by-side diffs Delta from patch set Stats (+42 lines, -15 lines) Patch
M Source/core/dom/Document.cpp View 1 2 3 4 5 6 7 8 9 1 chunk +6 lines, -0 lines 0 comments Download
M Source/core/dom/ExecutionContext.cpp View 1 2 3 4 5 6 7 8 9 1 chunk +2 lines, -0 lines 0 comments Download
M Source/core/html/parser/HTMLDocumentParser.h View 1 2 3 4 5 6 7 8 9 1 chunk +1 line, -0 lines 0 comments Download
M Source/core/html/parser/HTMLDocumentParser.cpp View 1 2 3 4 5 6 7 8 9 4 chunks +9 lines, -1 line 0 comments Download
M Source/core/html/parser/HTMLParserScheduler.h View 1 2 3 4 5 6 7 8 9 1 chunk +9 lines, -0 lines 0 comments Download
M Source/core/html/parser/HTMLParserScheduler.cpp View 1 2 3 4 5 6 7 8 9 2 chunks +7 lines, -0 lines 0 comments Download
M Source/core/loader/FrameLoader.cpp View 1 2 3 4 5 6 7 8 9 1 chunk +7 lines, -0 lines 0 comments Download
M Source/core/page/ScopedPageLoadDeferrer.cpp View 1 2 3 4 2 chunks +1 line, -14 lines 0 comments Download

Messages

Total messages: 43 (15 generated)
João Eiras
https://codereview.chromium.org/625583002/diff/40001/Source/core/dom/ExecutionContext.cpp File Source/core/dom/ExecutionContext.cpp (right): https://codereview.chromium.org/625583002/diff/40001/Source/core/dom/ExecutionContext.cpp#newcode89 Source/core/dom/ExecutionContext.cpp:89: ASSERT(!m_activeDOMObjectsAreSuspended); This matches the asserts that already exist in ...
6 years, 2 months ago (2014-10-06 12:14:31 UTC) #2
eseidel
Can you add a test case? https://codereview.chromium.org/625583002/diff/40001/Source/core/html/parser/HTMLDocumentParser.cpp File Source/core/html/parser/HTMLDocumentParser.cpp (right): https://codereview.chromium.org/625583002/diff/40001/Source/core/html/parser/HTMLDocumentParser.cpp#newcode286 Source/core/html/parser/HTMLDocumentParser.cpp:286: if (m_haveBackgroundParser || ...
6 years, 2 months ago (2014-10-06 18:07:08 UTC) #3
João Eiras
On 2014/10/06 18:07:08, eseidel wrote: > Can you add a test case? > Wouldn't know ...
6 years, 2 months ago (2014-10-07 13:25:07 UTC) #4
João Eiras
On 2014/10/07 13:25:07, João Eiras wrote: > On 2014/10/06 18:07:08, eseidel wrote: > > Can ...
6 years, 1 month ago (2014-11-12 17:40:55 UTC) #5
João Eiras
On 2014/10/06 18:07:08, eseidel wrote: > Can you add a test case? > I did, ...
6 years, 1 month ago (2014-11-18 15:09:52 UTC) #6
eseidel
I've moved off the blink project. Kouhei is a better reviewer for this now.
6 years, 1 month ago (2014-11-19 04:13:59 UTC) #7
kouhei (in TOK)
https://codereview.chromium.org/625583002/diff/140001/LayoutTests/fast/parser/html-document-parser-suspended-0.html File LayoutTests/fast/parser/html-document-parser-suspended-0.html (right): https://codereview.chromium.org/625583002/diff/140001/LayoutTests/fast/parser/html-document-parser-suspended-0.html#newcode21 LayoutTests/fast/parser/html-document-parser-suspended-0.html:21: <p><iframe src="data:text/html,%3Ch1%3EHi%3C%2Fh1%3E%3Ciframe%20src%3D%22data%3Atext%2Fhtml%2C%3Ch1%3EHi%22%3E%3C%2Fiframe%3E"></iframe></p> Nit: Would you use data:text/html;charset=utf-8, and/or javascript ...
6 years, 1 month ago (2014-11-19 07:56:11 UTC) #9
João Eiras
On 2014/10/06 18:07:08, eseidel wrote: > Can you add a test case? > After thinking ...
6 years, 1 month ago (2014-11-21 12:52:35 UTC) #10
João Eiras
On 2014/11/21 12:52:35, João Eiras wrote: > On 2014/10/06 18:07:08, eseidel wrote: > > Can ...
6 years ago (2014-11-24 12:46:23 UTC) #11
kouhei (in TOK)
On 2014/11/24 12:46:23, João Eiras wrote: > On 2014/11/21 12:52:35, João Eiras wrote: > > ...
6 years ago (2014-11-25 01:43:32 UTC) #12
kouhei (in TOK)
> This codepath will be covered in inspector tests after change in parser > scheduling: ...
6 years ago (2014-11-25 06:19:37 UTC) #13
João Eiras
On 2014/11/25 06:19:37, kouhei wrote: > > This codepath will be covered in inspector tests ...
6 years ago (2014-11-25 16:01:49 UTC) #14
kouhei (in TOK)
lgtm
6 years ago (2014-11-26 03:00:24 UTC) #15
kouhei (in TOK)
On 2014/11/25 16:01:49, João Eiras wrote: > On 2014/11/25 06:19:37, kouhei wrote: > > > ...
6 years ago (2014-11-26 03:03:38 UTC) #16
João Eiras
https://codereview.chromium.org/625583002/diff/140001/Source/core/html/parser/HTMLDocumentParser.h File Source/core/html/parser/HTMLDocumentParser.h (right): https://codereview.chromium.org/625583002/diff/140001/Source/core/html/parser/HTMLDocumentParser.h#newcode202 Source/core/html/parser/HTMLDocumentParser.h:202: bool m_tasksWereSuspended; On 2014/11/19 07:56:10, kouhei wrote: > Would ...
6 years ago (2014-11-27 01:18:38 UTC) #17
João Eiras
> This codepath will be covered in inspector tests after change in parser > scheduling: ...
6 years ago (2014-11-27 01:21:01 UTC) #18
kouhei (in TOK)
On 2014/11/27 01:21:01, João Eiras wrote: > > This codepath will be covered in inspector ...
6 years ago (2014-11-27 01:51:04 UTC) #19
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/625583002/160001
6 years ago (2014-11-27 11:52:32 UTC) #21
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/625583002/160001
6 years ago (2014-11-27 11:53:39 UTC) #24
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/625583002/160001
6 years ago (2014-11-27 11:53:58 UTC) #27
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/625583002/160001
6 years ago (2014-11-27 11:54:24 UTC) #31
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/625583002/160001
6 years ago (2014-11-27 11:54:45 UTC) #33
commit-bot: I haz the power
Try jobs failed on following builders: win_blink_rel on tryserver.blink (http://build.chromium.org/p/tryserver.blink/builders/win_blink_rel/builds/38790)
6 years ago (2014-11-27 13:55:48 UTC) #35
kouhei (in TOK)
On 2014/11/27 13:55:48, I haz the power (commit-bot) wrote: > Try jobs failed on following ...
6 years ago (2014-11-28 02:10:45 UTC) #36
João Eiras
On 2014/11/28 02:10:45, kouhei wrote: > On 2014/11/27 13:55:48, I haz the power (commit-bot) wrote: ...
6 years ago (2014-12-01 12:54:50 UTC) #37
João Eiras
On 2014/11/28 02:10:45, kouhei wrote: > On 2014/11/27 13:55:48, I haz the power (commit-bot) wrote: ...
6 years ago (2014-12-01 12:54:51 UTC) #38
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/625583002/180001
6 years ago (2014-12-01 18:15:41 UTC) #42
commit-bot: I haz the power
6 years ago (2014-12-01 19:21:08 UTC) #43
Message was sent while issue was closed.
Committed patchset #10 (id:180001) as
https://src.chromium.org/viewvc/blink?view=rev&revision=186256

Powered by Google App Engine
This is Rietveld 408576698