| Index: Source/core/fetch/ResourceFetcher.cpp
|
| diff --git a/Source/core/fetch/ResourceFetcher.cpp b/Source/core/fetch/ResourceFetcher.cpp
|
| index fbf3ebea262ee26e21c864fa3a8aac5a5c467e10..bdaabf66e9d032ebe24a6273f46fca78415f52dc 100644
|
| --- a/Source/core/fetch/ResourceFetcher.cpp
|
| +++ b/Source/core/fetch/ResourceFetcher.cpp
|
| @@ -437,40 +437,27 @@ bool ResourceFetcher::checkInsecureContent(Resource::Type type, const KURL& url,
|
| break;
|
| }
|
| }
|
| - // FIXME: We need a way to access the top-level frame's mixedContentChecker when that frame
|
| - // is in a different process from the current frame. Until that is done, we always allow
|
| - // loads in remote frames.
|
| - if (frame() && !frame()->tree().top()->isLocalFrame())
|
| - return true;
|
| if (treatment == TreatAsActiveContent) {
|
| if (LocalFrame* f = frame()) {
|
| if (!f->loader().mixedContentChecker()->canRunInsecureContent(m_document->securityOrigin(), url))
|
| return false;
|
| - Frame* top = f->tree().top();
|
| - if (top != f && !toLocalFrame(top)->loader().mixedContentChecker()->canRunInsecureContent(toLocalFrame(top)->document()->securityOrigin(), url))
|
| - return false;
|
| }
|
| } else if (treatment == TreatAsPassiveContent) {
|
| if (LocalFrame* f = frame()) {
|
| - Frame* top = f->tree().top();
|
| - if (!toLocalFrame(top)->loader().mixedContentChecker()->canDisplayInsecureContent(toLocalFrame(top)->document()->securityOrigin(), url))
|
| + if (!f->loader().mixedContentChecker()->canDisplayInsecureContent(m_document->securityOrigin(), url))
|
| return false;
|
| - if (MixedContentChecker::isMixedContent(toLocalFrame(top)->document()->securityOrigin(), url)) {
|
| + if (MixedContentChecker::isMixedContent(f->document()->securityOrigin(), url) || MixedContentChecker::isMixedContent(toLocalFrame(frame()->tree().top())->document()->securityOrigin(), url)) {
|
| switch (type) {
|
| - case Resource::TextTrack:
|
| - UseCounter::count(toLocalFrame(top)->document(), UseCounter::MixedContentTextTrack);
|
| - break;
|
| -
|
| case Resource::Raw:
|
| - UseCounter::count(toLocalFrame(top)->document(), UseCounter::MixedContentRaw);
|
| + UseCounter::count(f->document(), UseCounter::MixedContentRaw);
|
| break;
|
|
|
| case Resource::Image:
|
| - UseCounter::count(toLocalFrame(top)->document(), UseCounter::MixedContentImage);
|
| + UseCounter::count(f->document(), UseCounter::MixedContentImage);
|
| break;
|
|
|
| case Resource::Media:
|
| - UseCounter::count(toLocalFrame(top)->document(), UseCounter::MixedContentMedia);
|
| + UseCounter::count(f->document(), UseCounter::MixedContentMedia);
|
| break;
|
|
|
| default:
|
|
|