[mojo-edk] Stop using the sync broker on OS X
The sync broker is only needed for sandboxed shared
buffer allocation on POSIX, but it's not needed for
Mach shared buffers.
This stops using the broker on OS X.
BUG=591742,590979
Review URL: https://codereview.chromium.org/1809363002
Cr-Commit-Position: refs/heads/master@{#381908}
CrOS-Libchrome-Original-Commit: 018a4e46c477ada7307ed5c7dad7eb58b7da75b5
diff --git a/mojo/edk/system/node_controller.cc b/mojo/edk/system/node_controller.cc
index 30b331f..698238d 100644
--- a/mojo/edk/system/node_controller.cc
+++ b/mojo/edk/system/node_controller.cc
@@ -140,7 +140,7 @@
void NodeController::ConnectToParent(ScopedPlatformHandle platform_handle) {
// TODO(amistry): Consider the need for a broker on Windows.
-#if defined(OS_POSIX)
+#if defined(OS_POSIX) && !defined(OS_MACOSX)
// On posix, use the bootstrap channel for the broker and receive the node's
// channel synchronously as the first message from the broker.
broker_.reset(new Broker(std::move(platform_handle)));
@@ -231,7 +231,6 @@
scoped_refptr<PlatformSharedBuffer> NodeController::CreateSharedBuffer(
size_t num_bytes) {
- // TODO(amistry): Fix sync broker and re-enable on OSX.
#if defined(OS_POSIX) && !defined(OS_MACOSX)
// Shared buffer creation failure is fatal, so always use the broker when we
// have one. This does mean that a non-root process that has children will use
@@ -258,7 +257,7 @@
ScopedPlatformHandle platform_handle) {
DCHECK(io_task_runner_->RunsTasksOnCurrentThread());
-#if defined(OS_POSIX)
+#if defined(OS_POSIX) && !defined(OS_MACOSX)
PlatformChannelPair node_channel;
// BrokerHost owns itself.
BrokerHost* broker_host = new BrokerHost(std::move(platform_handle));
diff --git a/mojo/edk/system/node_controller.h b/mojo/edk/system/node_controller.h
index 34c2644..c177f8f 100644
--- a/mojo/edk/system/node_controller.h
+++ b/mojo/edk/system/node_controller.h
@@ -266,8 +266,8 @@
// Must only be accessed from the IO thread.
bool destroy_on_io_thread_shutdown_ = false;
-#if defined(OS_POSIX)
- // Broker for sync shared buffer creation (posix-only) in children.
+#if defined(OS_POSIX) && !defined(OS_MACOSX)
+ // Broker for sync shared buffer creation (non-Mac posix-only) in children.
scoped_ptr<Broker> broker_;
#endif