Index: third_party/WebKit/Source/modules/mediastream/MediaDevicesRequest.cpp |
diff --git a/third_party/WebKit/Source/modules/mediastream/MediaDevicesRequest.cpp b/third_party/WebKit/Source/modules/mediastream/MediaDevicesRequest.cpp |
index e26d64d2c5fc31a8d709006c3e507cd812bd3bb2..112d49387d54aa8b33939ef4291f7a2a00c87cce 100644 |
--- a/third_party/WebKit/Source/modules/mediastream/MediaDevicesRequest.cpp |
+++ b/third_party/WebKit/Source/modules/mediastream/MediaDevicesRequest.cpp |
@@ -36,13 +36,19 @@ |
MediaDevicesRequest* MediaDevicesRequest::create(ScriptState* state, UserMediaController* controller) |
{ |
- return new MediaDevicesRequest(state, controller); |
+ MediaDevicesRequest* request = new MediaDevicesRequest(state, controller); |
+ request->suspendIfNeeded(); |
+ return request; |
} |
MediaDevicesRequest::MediaDevicesRequest(ScriptState* state, UserMediaController* controller) |
- : ContextLifecycleObserver(state->executionContext()) |
+ : ActiveDOMObject(state->executionContext()) |
, m_controller(controller) |
, m_resolver(ScriptPromiseResolver::create(state)) |
+{ |
+} |
+ |
+MediaDevicesRequest::~MediaDevicesRequest() |
{ |
} |
@@ -71,7 +77,7 @@ |
m_resolver->resolve(mediaDevices); |
} |
-void MediaDevicesRequest::contextDestroyed() |
+void MediaDevicesRequest::stop() |
{ |
m_controller.clear(); |
m_resolver.clear(); |
@@ -81,7 +87,7 @@ |
{ |
visitor->trace(m_controller); |
visitor->trace(m_resolver); |
- ContextLifecycleObserver::trace(visitor); |
+ ActiveDOMObject::trace(visitor); |
} |
} // namespace blink |