Home | History | Annotate | Download | only in ipc
      1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 #include "build/build_config.h"
      6 
      7 #include "ipc/ipc_channel.h"
      8 #include "ipc/ipc_multiprocess_test.h"
      9 
     10 #if defined(OS_POSIX)
     11 #include "base/posix/global_descriptors.h"
     12 #include "ipc/ipc_descriptors.h"
     13 #endif
     14 
     15 namespace internal {
     16 
     17 void MultiProcessTestIPCSetUp() {
     18 #if defined(OS_ANDROID)
     19   // On Android we can't 'exec'. So for simple multi-process tests
     20   // we need to reset some global data after forking to get the same
     21   // behavior in simple multi-process tests.
     22   IPC::Channel::NotifyProcessForkedForTesting();
     23 #endif
     24 #if defined(OS_POSIX)
     25   base::GlobalDescriptors::GetInstance()->Set(kPrimaryIPCChannel,
     26       kPrimaryIPCChannel + base::GlobalDescriptors::kBaseDescriptor);
     27 #endif
     28 }
     29 
     30 }  // namespace internal
     31