Commit 45214516 authored by John Williams's avatar John Williams Committed by Commit Bot

[Media Router] Fixed crash when showing dummy media notification.

This change also moves generation of the notification ID to the
notification item itself.

Bug: 1107164, b/161612881
Change-Id: Ie043c8810878ff357027076205f45b7f194da43c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2414311Reviewed-by: default avatarElly Fong-Jones <ellyjones@chromium.org>
Commit-Queue: John Williams <jrw@chromium.org>
Cr-Commit-Position: refs/heads/master@{#807599}
parent 7939c567
......@@ -4,22 +4,19 @@
#include "chrome/browser/ui/global_media_controls/presentation_request_notification_item.h"
#include <utility>
#include "base/unguessable_token.h"
#include "chrome/browser/media/router/presentation/presentation_service_delegate_impl.h"
#include "chrome/browser/ui/global_media_controls/media_notification_service.h"
PresentationRequestNotificationItem::PresentationRequestNotificationItem(
const std::string& id,
MediaNotificationService* notification_service,
const content::PresentationRequest& request,
std::unique_ptr<media_router::StartPresentationContext> context)
: id_(id),
: id_(base::UnguessableToken::Create().ToString()),
notification_service_(notification_service),
context_(std::move(context)) {
// TODO(jrw): Save a copy of |request| once it is actually used.
DCHECK(!context || request == context->presentation_request());
notification_service_->ShowNotification(id_);
}
PresentationRequestNotificationItem::~PresentationRequestNotificationItem() {
......
......@@ -23,7 +23,6 @@ class PresentationRequestNotificationItem
: public media_message_center::MediaNotificationItem {
public:
PresentationRequestNotificationItem(
const std::string& id,
MediaNotificationService* notification_service,
const content::PresentationRequest& request,
std::unique_ptr<media_router::StartPresentationContext> context);
......
......@@ -6,7 +6,6 @@
#include <utility>
#include "base/unguessable_token.h"
#include "chrome/browser/media/router/media_router.h"
#include "chrome/browser/media/router/media_router_factory.h"
#include "chrome/browser/media/router/presentation/presentation_service_delegate_impl.h"
......@@ -137,6 +136,6 @@ void PresentationRequestNotificationProvider::CreateItemForPresentationRequest(
std::unique_ptr<media_router::StartPresentationContext> context) {
// This may replace an existing item, which is the right thing to do if we've
// reached this point.
item_.emplace(base::UnguessableToken().ToString(), notification_service_,
request, std::move(context));
item_.emplace(notification_service_, request, std::move(context));
notification_service_->ShowNotification(item_->id());
}
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment