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

Unified Diff: content/renderer/media/webrtc/peer_connection_dependency_factory.cc

Issue 1464183002: media: Simplify MediaPermissionDispatcher. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: fix comment Created 5 years, 1 month 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/media/webrtc/peer_connection_dependency_factory.cc
diff --git a/content/renderer/media/webrtc/peer_connection_dependency_factory.cc b/content/renderer/media/webrtc/peer_connection_dependency_factory.cc
index 4d20f5ec6e0f1ba2ba4fec1330ba1d0c803b0728..457e2616ff0e97066cd2634ff525cf7d48f48bb4 100644
--- a/content/renderer/media/webrtc/peer_connection_dependency_factory.cc
+++ b/content/renderer/media/webrtc/peer_connection_dependency_factory.cc
@@ -139,14 +139,14 @@ class P2PPortAllocatorFactory
: public rtc::RefCountedObject<webrtc::PortAllocatorFactoryInterface> {
public:
P2PPortAllocatorFactory(
- scoped_ptr<media::MediaPermission> media_permission,
+ media::MediaPermission* media_permission,
const scoped_refptr<P2PSocketDispatcher>& socket_dispatcher,
rtc::NetworkManager* network_manager,
rtc::PacketSocketFactory* socket_factory,
const P2PPortAllocator::Config& config,
const GURL& origin,
const scoped_refptr<base::SingleThreadTaskRunner>& task_runner)
- : media_permission_(media_permission.Pass()),
+ : media_permission_(media_permission),
socket_dispatcher_(socket_dispatcher),
network_manager_(network_manager),
socket_factory_(socket_factory),
@@ -176,11 +176,10 @@ class P2PPortAllocatorFactory
scoped_ptr<rtc::NetworkManager> network_manager;
if (config.enable_multiple_routes) {
- media::MediaPermission* media_permission = media_permission_.get();
FilteringNetworkManager* filtering_network_manager =
new FilteringNetworkManager(network_manager_, origin_,
- media_permission_.Pass());
- if (media_permission) {
+ media_permission_);
+ if (media_permission_) {
// Start permission check earlier to reduce any impact to call set up
// time. It's safe to use Unretained here since both destructor and
// Initialize can only be called on the worker thread.
@@ -201,18 +200,14 @@ class P2PPortAllocatorFactory
~P2PPortAllocatorFactory() override {}
private:
- // Ownership of |media_permission_| will be passed to FilteringNetworkManager
- // during CreatePortAllocator.
- scoped_ptr<media::MediaPermission> media_permission_;
-
+ media::MediaPermission* media_permission_;
scoped_refptr<P2PSocketDispatcher> socket_dispatcher_;
rtc::NetworkManager* network_manager_;
rtc::PacketSocketFactory* socket_factory_;
P2PPortAllocator::Config config_;
GURL origin_;
- // This is the worker thread where |media_permission_| and |network_manager_|
- // live on.
+ // This is the worker thread where |network_manager_| live on.
scoped_refptr<base::SingleThreadTaskRunner> task_runner_;
};
@@ -471,7 +466,7 @@ PeerConnectionDependencyFactory::CreatePeerConnection(
// which means the permission will be granted automatically. This could be the
// case when either the experiment is not enabled or the preference is not
// enforced.
- scoped_ptr<media::MediaPermission> media_permission;
+ media::MediaPermission* media_permission = nullptr;
if (!GetContentClient()
->renderer()
->ShouldEnforceWebRTCRoutingPreferences()) {
@@ -528,10 +523,8 @@ PeerConnectionDependencyFactory::CreatePeerConnection(
if (create_media_permission) {
content::RenderFrameImpl* render_frame =
content::RenderFrameImpl::FromWebFrame(web_frame);
- if (render_frame) {
- media_permission = render_frame->CreateMediaPermissionProxy(
- chrome_worker_thread_.task_runner());
- }
+ if (render_frame)
+ media_permission = render_frame->GetMediaPermission();
DCHECK(media_permission);
}
}
@@ -542,7 +535,7 @@ PeerConnectionDependencyFactory::CreatePeerConnection(
scoped_refptr<P2PPortAllocatorFactory> pa_factory =
new P2PPortAllocatorFactory(
- media_permission.Pass(), p2p_socket_dispatcher_, network_manager_,
+ media_permission, p2p_socket_dispatcher_, network_manager_,
socket_factory_.get(), port_config, requesting_origin,
chrome_worker_thread_.task_runner());

Powered by Google App Engine
This is Rietveld 408576698