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

Unified Diff: third_party/WebKit/Source/modules/mediastream/UserMediaController.h

Issue 2206533003: Refactor lifetime management of UserMediaController (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: temp Created 4 years, 4 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: third_party/WebKit/Source/modules/mediastream/UserMediaController.h
diff --git a/third_party/WebKit/Source/modules/mediastream/UserMediaController.h b/third_party/WebKit/Source/modules/mediastream/UserMediaController.h
index d1858803a28aae3b677246684a1885b10bb20376..69b3e4109435bf014db82646c307805e585c59d4 100644
--- a/third_party/WebKit/Source/modules/mediastream/UserMediaController.h
+++ b/third_party/WebKit/Source/modules/mediastream/UserMediaController.h
@@ -34,14 +34,14 @@ class MediaDevices;
class MediaDevicesRequest;
class UserMediaRequest;
-class UserMediaController final : public GarbageCollected<UserMediaController>, public Supplement<LocalFrame> {
+class UserMediaController final : public GarbageCollectedFinalized<UserMediaController>, public Supplement<LocalFrame> {
USING_GARBAGE_COLLECTED_MIXIN(UserMediaController);
public:
- static UserMediaController* create(UserMediaClient*);
+ static UserMediaController* create(std::unique_ptr<UserMediaClient>);
DECLARE_VIRTUAL_TRACE();
- UserMediaClient* client() const { return m_client; }
+ UserMediaClient* client() const { return m_client.get(); }
void requestUserMedia(UserMediaRequest*);
void cancelUserMediaRequest(UserMediaRequest*);
@@ -57,9 +57,9 @@ public:
static UserMediaController* from(LocalFrame* frame) { return static_cast<UserMediaController*>(Supplement<LocalFrame>::from(frame, supplementName())); }
private:
- explicit UserMediaController(UserMediaClient*);
+ explicit UserMediaController(std::unique_ptr<UserMediaClient>);
- UserMediaClient* m_client;
+ std::unique_ptr<UserMediaClient> m_client;
};
inline void UserMediaController::requestUserMedia(UserMediaRequest* request)

Powered by Google App Engine
This is Rietveld 408576698