Index: content/browser/permissions/permission_service_impl.cc |
diff --git a/content/browser/permissions/permission_service_impl.cc b/content/browser/permissions/permission_service_impl.cc |
index a62913c822a6c520d0632a9fa58411cf1f4b2f06..c5ef12b6cdaa172cfda26fa69948ebea0e075e31 100644 |
--- a/content/browser/permissions/permission_service_impl.cc |
+++ b/content/browser/permissions/permission_service_impl.cc |
@@ -225,11 +225,13 @@ PermissionStatus PermissionServiceImpl::GetPermissionStatusFromType( |
return PermissionStatus::DENIED; |
GURL requesting_origin(origin.Serialize()); |
- // If the embedding_origin is empty we'll use |origin| instead. |
- GURL embedding_origin = context_->GetEmbeddingOrigin(); |
- return browser_context->GetPermissionManager()->GetPermissionStatus( |
- type, requesting_origin, |
- embedding_origin.is_empty() ? requesting_origin : embedding_origin); |
+ if (context_->render_frame_host()) { |
+ return browser_context->GetPermissionManager()->GetPermissionStatusForFrame( |
+ type, context_->render_frame_host(), requesting_origin); |
+ } else { |
+ return browser_context->GetPermissionManager() |
+ ->GetPermissionStatusForWorker(type, requesting_origin); |
+ } |
} |
void PermissionServiceImpl::ResetPermissionStatus(PermissionType type, |