Run Tizen Webapps in single process mode
[platform/framework/web/crosswalk-tizen.git] / atom / browser / atom_browser_main_parts.cc
index 3ea0c3e..10d8583 100644 (file)
@@ -87,13 +87,14 @@ AtomBrowserMainParts::AtomBrowserMainParts()
     atom_bindings_ = std::move(self_atom_bindings);
 
     js_env_ = std::move(self_js_env);
+    js_env_->SetupLocker();
     node_debugger_ = std::move(self_node_debugger);
     bridge_task_runner_ = self_bridge_task_runner;
     node_env_ = std::move(self_node_env);
   } else {
     browser_.reset(new Browser);
     node_bindings_.reset(NodeBindings::Create(NodeBindings::BROWSER));
-    atom_bindings_.reset(new AtomBindings(uv_default_loop()));
+    atom_bindings_.reset(new AtomBindings(node_bindings_->uv_loop()));
   }
   self_ = this;
   // Register extension scheme as web safe scheme.
@@ -140,10 +141,10 @@ void AtomBrowserMainParts::SetNodeEnvironment() {
 
   self_js_env.reset(new atom::JavascriptEnvironment);
   self_node_bindings.reset(atom::NodeBindings::Create(atom::NodeBindings::BROWSER));
-  self_atom_bindings.reset(new atom::AtomBindings(uv_default_loop()));
+  self_atom_bindings.reset(new atom::AtomBindings(self_node_bindings->uv_loop()));
   self_node_bindings->Initialize();
 
-  self_node_debugger.reset(new atom::NodeDebugger(self_js_env->isolate()));
+  self_node_debugger.reset(new atom::NodeDebugger(self_js_env->isolate(), self_node_bindings->uv_loop()));
   env_ = self_node_bindings->CreateEnvironment(self_js_env->context());
   self_node_env.reset(new atom::NodeEnvironment(env_));
 
@@ -196,11 +197,12 @@ void AtomBrowserMainParts::PostEarlyInitialization() {
   // The ProxyResolverV8 has setup a complete V8 environment, in order to
   // avoid conflicts we only initialize our V8 environment after that.
   js_env_.reset(new JavascriptEnvironment);
+  js_env_->SetupLocker();
 
   node_bindings_->Initialize();
 
   // Support the "--debug" switch.
-  node_debugger_.reset(new NodeDebugger(js_env_->isolate()));
+  node_debugger_.reset(new NodeDebugger(js_env_->isolate(), node_bindings_->uv_loop()));
 
   // Create the global environment.
   node::Environment* env =