| Index: third_party/WebKit/Source/core/html/imports/HTMLImportsController.cpp
|
| diff --git a/third_party/WebKit/Source/core/html/imports/HTMLImportsController.cpp b/third_party/WebKit/Source/core/html/imports/HTMLImportsController.cpp
|
| index 76192bc40505fe648c8f12b47a864f279cfbd41a..230c4300d35ad472132a531f19cb84ccf57563ae 100644
|
| --- a/third_party/WebKit/Source/core/html/imports/HTMLImportsController.cpp
|
| +++ b/third_party/WebKit/Source/core/html/imports/HTMLImportsController.cpp
|
| @@ -34,6 +34,7 @@
|
| #include "core/fetch/ResourceFetcher.h"
|
| #include "core/frame/LocalFrame.h"
|
| #include "core/frame/UseCounter.h"
|
| +#include "core/html/imports/HTMLImport.h"
|
| #include "core/html/imports/HTMLImportChild.h"
|
| #include "core/html/imports/HTMLImportChildClient.h"
|
| #include "core/html/imports/HTMLImportLoader.h"
|
| @@ -86,14 +87,15 @@ HTMLImportChild* HTMLImportsController::createChild(
|
| return root()->add(child);
|
| }
|
|
|
| -HTMLImportChild* HTMLImportsController::load(HTMLImport* parent,
|
| - HTMLImportChildClient* client,
|
| +HTMLImportChild* HTMLImportsController::load(HTMLImportChildClient* client,
|
| FetchRequest request) {
|
| DCHECK(!request.url().isEmpty());
|
| DCHECK(request.url().isValid());
|
| - DCHECK(parent == root() ||
|
| - toHTMLImportChild(parent)->loader()->isFirstImport(
|
| - toHTMLImportChild(parent)));
|
| +
|
| + HTMLImportLoader* loader = loaderFor(*master());
|
| + HTMLImport* parent = loader ? static_cast<HTMLImport*>(loader->firstImport())
|
| + : static_cast<HTMLImport*>(root());
|
| + DCHECK(parent);
|
|
|
| if (HTMLImportChild* childToShareWith = root()->find(request.url())) {
|
| HTMLImportLoader* loader = childToShareWith->loader();
|
| @@ -110,7 +112,7 @@ HTMLImportChild* HTMLImportsController::load(HTMLImport* parent,
|
| if (!resource)
|
| return nullptr;
|
|
|
| - HTMLImportLoader* loader = createLoader();
|
| + loader = createLoader();
|
| HTMLImportChild* child = createChild(request.url(), loader, parent, client);
|
| // We set resource after the import tree is built since
|
| // Resource::addClient() immediately calls back to feed the bytes when the
|
|
|