| OLD | NEW | 
|    1 // Copyright 2015 The Chromium Authors. All rights reserved. |    1 // Copyright 2015 The Chromium Authors. All rights reserved. | 
|    2 // Use of this source code is governed by a BSD-style license that can be |    2 // Use of this source code is governed by a BSD-style license that can be | 
|    3 // found in the LICENSE file. |    3 // found in the LICENSE file. | 
|    4  |    4  | 
|    5 #include "content/common/mojo/mojo_shell_connection_impl.h" |    5 #include "content/common/mojo/mojo_shell_connection_impl.h" | 
|    6  |    6  | 
|    7 #include <utility> |    7 #include <utility> | 
|    8  |    8  | 
|    9 #include "base/command_line.h" |    9 #include "base/command_line.h" | 
|   10 #include "base/lazy_instance.h" |   10 #include "base/lazy_instance.h" | 
|   11 #include "base/run_loop.h" |   11 #include "base/run_loop.h" | 
|   12 #include "base/stl_util.h" |   12 #include "base/stl_util.h" | 
|   13 #include "base/threading/thread_local.h" |   13 #include "base/threading/thread_local.h" | 
|   14 #include "content/public/common/content_switches.h" |   14 #include "content/public/common/content_switches.h" | 
|   15 #include "mojo/edk/embedder/embedder.h" |   15 #include "mojo/edk/embedder/embedder.h" | 
|   16 #include "mojo/edk/embedder/platform_channel_pair.h" |   16 #include "mojo/edk/embedder/platform_channel_pair.h" | 
|   17 #include "mojo/shell/public/cpp/shell_client.h" |   17 #include "services/shell/public/cpp/shell_client.h" | 
|   18 #include "mojo/shell/public/cpp/shell_connection.h" |   18 #include "services/shell/public/cpp/shell_connection.h" | 
|   19 #include "mojo/shell/runner/common/client_util.h" |   19 #include "services/shell/runner/common/client_util.h" | 
|   20  |   20  | 
|   21 namespace content { |   21 namespace content { | 
|   22 namespace { |   22 namespace { | 
|   23  |   23  | 
|   24 using MojoShellConnectionPtr = |   24 using MojoShellConnectionPtr = | 
|   25     base::ThreadLocalPointer<MojoShellConnectionImpl>; |   25     base::ThreadLocalPointer<MojoShellConnectionImpl>; | 
|   26  |   26  | 
|   27 // Env is thread local so that aura may be used on multiple threads. |   27 // Env is thread local so that aura may be used on multiple threads. | 
|   28 base::LazyInstance<MojoShellConnectionPtr>::Leaky lazy_tls_ptr = |   28 base::LazyInstance<MojoShellConnectionPtr>::Leaky lazy_tls_ptr = | 
|   29     LAZY_INSTANCE_INITIALIZER; |   29     LAZY_INSTANCE_INITIALIZER; | 
| (...skipping 129 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  159 // static |  159 // static | 
|  160 void MojoShellConnection::Destroy() { |  160 void MojoShellConnection::Destroy() { | 
|  161   // This joins the shell controller thread. |  161   // This joins the shell controller thread. | 
|  162   delete Get(); |  162   delete Get(); | 
|  163   lazy_tls_ptr.Pointer()->Set(nullptr); |  163   lazy_tls_ptr.Pointer()->Set(nullptr); | 
|  164 } |  164 } | 
|  165  |  165  | 
|  166 MojoShellConnection::~MojoShellConnection() {} |  166 MojoShellConnection::~MojoShellConnection() {} | 
|  167  |  167  | 
|  168 }  // namespace content |  168 }  // namespace content | 
| OLD | NEW |