Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(11)

Unified Diff: extensions/browser/api/display_source/wifi_display/wifi_display_session_service_impl.cc

Issue 2326913003: Privatize StrongBinding lifetime management (Closed)
Patch Set: rebase Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: extensions/browser/api/display_source/wifi_display/wifi_display_session_service_impl.cc
diff --git a/extensions/browser/api/display_source/wifi_display/wifi_display_session_service_impl.cc b/extensions/browser/api/display_source/wifi_display/wifi_display_session_service_impl.cc
index 7a402b97b4fea686a53345be661bca8f41896c7c..9bd6fec3f7dd437867c97cc54d264f90420a7c5d 100644
--- a/extensions/browser/api/display_source/wifi_display/wifi_display_session_service_impl.cc
+++ b/extensions/browser/api/display_source/wifi_display/wifi_display_session_service_impl.cc
@@ -7,6 +7,7 @@
#include "base/bind.h"
#include "content/public/browser/browser_context.h"
#include "extensions/browser/api/display_source/display_source_connection_delegate_factory.h"
+#include "mojo/public/cpp/bindings/strong_binding.h"
namespace {
const char kErrorCannotHaveMultipleSessions[] =
@@ -19,10 +20,8 @@ namespace extensions {
using namespace api::display_source;
WiFiDisplaySessionServiceImpl::WiFiDisplaySessionServiceImpl(
- DisplaySourceConnectionDelegate* delegate,
- mojo::InterfaceRequest<WiFiDisplaySessionService> request)
- : binding_(this, std::move(request)),
- delegate_(delegate),
+ DisplaySourceConnectionDelegate* delegate)
+ : delegate_(delegate),
sink_state_(SINK_STATE_NONE),
sink_id_(DisplaySourceConnectionDelegate::kInvalidSinkId),
weak_factory_(this) {
@@ -42,8 +41,9 @@ void WiFiDisplaySessionServiceImpl::BindToRequest(
DisplaySourceConnectionDelegateFactory::GetForBrowserContext(
browser_context);
CHECK(delegate);
-
- new WiFiDisplaySessionServiceImpl(delegate, std::move(request));
+ mojo::MakeStrongBinding(
+ base::MakeUnique<WiFiDisplaySessionServiceImpl>(delegate),
+ std::move(request));
}
void WiFiDisplaySessionServiceImpl::SetClient(

Powered by Google App Engine
This is Rietveld 408576698