| Index: content/browser/push_messaging/push_messaging_message_filter.cc
|
| diff --git a/content/browser/push_messaging/push_messaging_message_filter.cc b/content/browser/push_messaging/push_messaging_message_filter.cc
|
| index da9d510f10eac493902c0fd86cd5a5978fe7cb19..946e6d5cb5793aac7f473d6152ae7d8c11b364cc 100644
|
| --- a/content/browser/push_messaging/push_messaging_message_filter.cc
|
| +++ b/content/browser/push_messaging/push_messaging_message_filter.cc
|
| @@ -759,7 +759,8 @@ void PushMessagingMessageFilter::OnGetPermissionStatus(
|
| service_worker_context_->GetLiveRegistration(
|
| service_worker_registration_id);
|
| if (!service_worker_registration) {
|
| - Send(new PushMessagingMsg_GetPermissionStatusError(request_id));
|
| + Send(new PushMessagingMsg_GetPermissionStatusError(
|
| + request_id, blink::WebPushError::ErrorTypeAbort));
|
| return;
|
| }
|
|
|
| @@ -777,6 +778,11 @@ void PushMessagingMessageFilter::Core::GetPermissionStatusOnUI(
|
| blink::WebPushPermissionStatus permission_status;
|
| PushMessagingService* push_service = service();
|
| if (push_service) {
|
| + if (!user_visible && !push_service->SupportNonVisibleMessages()) {
|
| + Send(new PushMessagingMsg_GetPermissionStatusError(
|
| + request_id, blink::WebPushError::ErrorTypeNotSupported));
|
| + return;
|
| + }
|
| GURL embedding_origin = requesting_origin;
|
| permission_status = push_service->GetPermissionStatus(requesting_origin,
|
| embedding_origin,
|
| @@ -785,7 +791,8 @@ void PushMessagingMessageFilter::Core::GetPermissionStatusOnUI(
|
| // Return prompt, so the website can't detect incognito mode.
|
| permission_status = blink::WebPushPermissionStatusPrompt;
|
| } else {
|
| - Send(new PushMessagingMsg_GetPermissionStatusError(request_id));
|
| + Send(new PushMessagingMsg_GetPermissionStatusError(
|
| + request_id, blink::WebPushError::ErrorTypeAbort));
|
| return;
|
| }
|
| Send(new PushMessagingMsg_GetPermissionStatusSuccess(request_id,
|
|
|