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

Unified Diff: content/renderer/image_downloader/image_downloader_impl.h

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: content/renderer/image_downloader/image_downloader_impl.h
diff --git a/content/renderer/image_downloader/image_downloader_impl.h b/content/renderer/image_downloader/image_downloader_impl.h
index cc4a11aba5c3e779da18632d314e2b12412494ee..310ed0384c7f409b06f29a03589172fdef3cb6e9 100644
--- a/content/renderer/image_downloader/image_downloader_impl.h
+++ b/content/renderer/image_downloader/image_downloader_impl.h
@@ -14,7 +14,7 @@
#include "content/common/image_downloader/image_downloader.mojom.h"
#include "content/public/renderer/render_frame_observer.h"
#include "content/public/renderer/render_thread_observer.h"
-#include "mojo/public/cpp/bindings/strong_binding.h"
+#include "mojo/public/cpp/bindings/binding.h"
#include "url/gurl.h"
class SkBitmap;
@@ -28,22 +28,21 @@ namespace content {
class MultiResolutionImageResourceFetcher;
class RenderFrame;
-class ImageDownloaderImpl : public content::mojom::ImageDownloader,
+class ImageDownloaderImpl : public mojom::ImageDownloader,
public RenderFrameObserver,
public RenderThreadObserver {
public:
- static void CreateMojoService(
- RenderFrame* render_frame,
- mojo::InterfaceRequest<content::mojom::ImageDownloader> request);
+ ~ImageDownloaderImpl() override;
+
+ static void CreateMojoService(RenderFrame* render_frame,
+ mojom::ImageDownloaderRequest request);
// RenderThreadObserver implementation.
void OnRenderProcessShutdown() override;
private:
- ImageDownloaderImpl(
- RenderFrame* render_frame,
- mojo::InterfaceRequest<content::mojom::ImageDownloader> request);
- ~ImageDownloaderImpl() override;
+ ImageDownloaderImpl(RenderFrame* render_frame,
+ mojom::ImageDownloaderRequest request);
// RenderFrameObserver implementation.
void OnDestruct() override;
@@ -85,15 +84,14 @@ class ImageDownloaderImpl : public content::mojom::ImageDownloader,
const std::vector<gfx::Size>& result_original_image_sizes,
const DownloadImageCallback& callback);
- // We use StrongBinding to ensure deletion of "this" when connection closed
- mojo::StrongBinding<ImageDownloader> binding_;
-
typedef ScopedVector<MultiResolutionImageResourceFetcher>
ImageResourceFetcherList;
// ImageResourceFetchers schedule via FetchImage.
ImageResourceFetcherList image_fetchers_;
+ mojo::Binding<mojom::ImageDownloader> binding_;
+
DISALLOW_COPY_AND_ASSIGN(ImageDownloaderImpl);
};

Powered by Google App Engine
This is Rietveld 408576698