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

Unified Diff: chrome/browser/chromeos/arc/gpu_arc_video_service_host.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: chrome/browser/chromeos/arc/gpu_arc_video_service_host.cc
diff --git a/chrome/browser/chromeos/arc/gpu_arc_video_service_host.cc b/chrome/browser/chromeos/arc/gpu_arc_video_service_host.cc
index 513b166d61970a0a3db695870b92c93872cc4958..899eabdce6547d4b1143e111b0932878530e078c 100644
--- a/chrome/browser/chromeos/arc/gpu_arc_video_service_host.cc
+++ b/chrome/browser/chromeos/arc/gpu_arc_video_service_host.cc
@@ -42,9 +42,7 @@ void ConnectToVideoAcceleratorServiceOnIOThread(
class VideoAcceleratorFactoryService : public mojom::VideoAcceleratorFactory {
public:
- explicit VideoAcceleratorFactoryService(
- mojom::VideoAcceleratorFactoryRequest request)
- : binding_(this, std::move(request)) {}
+ VideoAcceleratorFactoryService() = default;
void Create(mojom::VideoAcceleratorServiceRequest request) override {
content::BrowserThread::PostTask(
@@ -54,8 +52,6 @@ class VideoAcceleratorFactoryService : public mojom::VideoAcceleratorFactory {
}
private:
- mojo::StrongBinding<VideoAcceleratorFactory> binding_;
-
DISALLOW_COPY_AND_ASSIGN(VideoAcceleratorFactoryService);
};
@@ -150,11 +146,9 @@ void GpuArcVideoServiceHost::OnBootstrapVideoAcceleratorFactory(
}
callback.Run(std::move(child_handle), token);
- // The lifetime is managed by the StrongBinding insides the
- // VideoAcceleratorFactoryService.
- new VideoAcceleratorFactoryService(
- mojo::MakeRequest<mojom::VideoAcceleratorFactory>(
- std::move(server_pipe)));
+ mojo::MakeStrongBinding(base::MakeUnique<VideoAcceleratorFactoryService>(),
+ mojo::MakeRequest<mojom::VideoAcceleratorFactory>(
+ std::move(server_pipe)));
}
} // namespace arc
« no previous file with comments | « chrome/browser/budget_service/budget_service_impl.cc ('k') | chrome/browser/chromeos/attestation/platform_verification_impl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698