|
Add an extra guard to replaceDocument()
The key of this change is to add an extra guard against rude JS in unload event
handlers.
To add the change in a sane way, this change also includes some refactoring:
* Moving |shouldReuseDefaultView| local variable, which should be computed
beforehand to DocumentInit.
* Splitting replaceDocument into DocuentLoader and FrameLoader.
* Renaming them to replaceDocumentWriteExecutingJavaScriptURL() for clarity.
* Using the FrameLoader API instead of DocumentLoader one from ScriptController.
TEST=unload-mutation-crash.html
R=esprehn@chromium.org, dglazkov@chromium.org, abarth@chromium.org
BUG= 405745
Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=180918
Total comments: 4
Total comments: 1
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+99 lines, -38 lines) |
Patch |
 |
A |
LayoutTests/fast/loader/unload-mutation-crash.html
|
View
|
|
1 chunk |
+23 lines, -0 lines |
0 comments
|
Download
|
 |
A |
LayoutTests/fast/loader/unload-mutation-crash-expected.txt
|
View
|
|
1 chunk |
+2 lines, -0 lines |
0 comments
|
Download
|
 |
M |
Source/bindings/core/v8/ScriptController.cpp
|
View
|
1
|
1 chunk |
+1 line, -6 lines |
0 comments
|
Download
|
 |
M |
Source/core/dom/DecodedDataDocumentParser.h
|
View
|
1
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
 |
M |
Source/core/dom/DocumentInit.h
|
View
|
1
|
2 chunks |
+11 lines, -0 lines |
0 comments
|
Download
|
 |
M |
Source/core/dom/DocumentInit.cpp
|
View
|
|
2 chunks |
+2 lines, -0 lines |
0 comments
|
Download
|
 |
M |
Source/core/dom/DocumentParser.h
|
View
|
1
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
 |
M |
Source/core/frame/LocalFrame.h
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
 |
M |
Source/core/frame/LocalFrame.cpp
|
View
|
|
1 chunk |
+5 lines, -0 lines |
0 comments
|
Download
|
 |
M |
Source/core/loader/DocumentLoader.h
|
View
|
1
2
|
3 chunks |
+3 lines, -2 lines |
0 comments
|
Download
|
 |
M |
Source/core/loader/DocumentLoader.cpp
|
View
|
1
2
|
3 chunks |
+15 lines, -24 lines |
0 comments
|
Download
|
 |
M |
Source/core/loader/DocumentWriter.h
|
View
|
1
|
1 chunk |
+2 lines, -2 lines |
0 comments
|
Download
|
 |
M |
Source/core/loader/FrameLoader.h
|
View
|
1
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
 |
M |
Source/core/loader/FrameLoader.cpp
|
View
|
1
|
1 chunk |
+30 lines, -0 lines |
0 comments
|
Download
|
 |
M |
Source/web/WebLocalFrameImpl.cpp
|
View
|
1
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
Total messages: 8 (0 generated)
|