Home | History | Annotate | Download | only in tests
      1 // Copyright 2014 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 "sandbox/linux/tests/test_utils.h"
      6 
      7 #include <errno.h>
      8 #include <sys/stat.h>
      9 #include <sys/types.h>
     10 #include <sys/wait.h>
     11 #include <unistd.h>
     12 
     13 #include "base/basictypes.h"
     14 #include "base/logging.h"
     15 #include "base/posix/eintr_wrapper.h"
     16 
     17 namespace sandbox {
     18 
     19 bool TestUtils::CurrentProcessHasChildren() {
     20   siginfo_t process_info;
     21   int ret = HANDLE_EINTR(
     22       waitid(P_ALL, 0, &process_info, WEXITED | WNOHANG | WNOWAIT));
     23   if (-1 == ret) {
     24     PCHECK(ECHILD == errno);
     25     return false;
     26   } else {
     27     return true;
     28   }
     29 }
     30 
     31 }  // namespace sandbox
     32