| // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #include "build/build_config.h" |
| |
| #include "ipc/ipc_channel.h" |
| #include "ipc/ipc_multiprocess_test.h" |
| |
| #if defined(OS_POSIX) |
| #include "base/posix/global_descriptors.h" |
| #include "ipc/ipc_descriptors.h" |
| #endif |
| |
| namespace internal { |
| |
| void MultiProcessTestIPCSetUp() { |
| #if defined(OS_ANDROID) |
| // On Android we can't 'exec'. So for simple multi-process tests |
| // we need to reset some global data after forking to get the same |
| // behavior in simple multi-process tests. |
| IPC::Channel::NotifyProcessForkedForTesting(); |
| #endif |
| #if defined(OS_POSIX) |
| base::GlobalDescriptors::GetInstance()->Set(kPrimaryIPCChannel, |
| kPrimaryIPCChannel + base::GlobalDescriptors::kBaseDescriptor); |
| #endif |
| } |
| |
| } // namespace internal |