Index: third_party/WebKit/Source/platform/mediastream/MediaStreamComponent.h |
diff --git a/third_party/WebKit/Source/platform/mediastream/MediaStreamComponent.h b/third_party/WebKit/Source/platform/mediastream/MediaStreamComponent.h |
index e8b7832a65d7019e9f29972d919db58b0e81e008..08809488c4ae3a8cada2806b765ac76b62db50d5 100644 |
--- a/third_party/WebKit/Source/platform/mediastream/MediaStreamComponent.h |
+++ b/third_party/WebKit/Source/platform/mediastream/MediaStreamComponent.h |
@@ -33,7 +33,6 @@ |
#define MediaStreamComponent_h |
#include "platform/audio/AudioSourceProvider.h" |
-#include "platform/heap/Handle.h" |
#include "wtf/PassOwnPtr.h" |
#include "wtf/PassRefPtr.h" |
#include "wtf/RefCounted.h" |
@@ -45,15 +44,15 @@ |
class MediaStreamSource; |
class WebAudioSourceProvider; |
-class PLATFORM_EXPORT MediaStreamComponent final : public GarbageCollectedFinalized<MediaStreamComponent> { |
+class PLATFORM_EXPORT MediaStreamComponent final : public RefCounted<MediaStreamComponent> { |
public: |
class ExtraData { |
public: |
virtual ~ExtraData() { } |
}; |
- static MediaStreamComponent* create(MediaStreamSource*); |
- static MediaStreamComponent* create(const String& id, MediaStreamSource*); |
+ static PassRefPtr<MediaStreamComponent> create(PassRefPtr<MediaStreamSource>); |
+ static PassRefPtr<MediaStreamComponent> create(const String& id, PassRefPtr<MediaStreamSource>); |
MediaStreamSource* source() const { return m_source.get(); } |
@@ -71,13 +70,8 @@ |
ExtraData* extraData() const { return m_extraData.get(); } |
void setExtraData(PassOwnPtr<ExtraData> extraData) { m_extraData = extraData; } |
- // |m_extraData| may hold pointers GC objects, and it may touch them in destruction. |
- // So this class is eagerly finalized to finalize |m_extraData| promptly. |
- EAGERLY_FINALIZE(); |
- DECLARE_TRACE(); |
- |
private: |
- MediaStreamComponent(const String& id, MediaStreamSource*); |
+ MediaStreamComponent(const String& id, PassRefPtr<MediaStreamSource>); |
#if ENABLE(WEB_AUDIO) |
// AudioSourceProviderImpl wraps a WebAudioSourceProvider::provideInput() |
@@ -106,14 +100,14 @@ |
AudioSourceProviderImpl m_sourceProvider; |
#endif // ENABLE(WEB_AUDIO) |
- Member<MediaStreamSource> m_source; |
+ RefPtr<MediaStreamSource> m_source; |
String m_id; |
bool m_enabled; |
bool m_muted; |
OwnPtr<ExtraData> m_extraData; |
}; |
-typedef HeapVector<Member<MediaStreamComponent>> MediaStreamComponentVector; |
+typedef Vector<RefPtr<MediaStreamComponent>> MediaStreamComponentVector; |
} // namespace blink |