summaryrefslogtreecommitdiffstats
path: root/googletest/src
diff options
context:
space:
mode:
authorFabrice de Gans-Riberi <fdegans@chromium.org>2018-05-03 19:06:45 (GMT)
committerFabrice de Gans-Riberi <fdegans@chromium.org>2018-05-03 19:06:45 (GMT)
commit13af91faff5aaec0a622601713bc4f8b89a8e108 (patch)
tree801dcc3e17c738755473ee65b0d13a4803d62c74 /googletest/src
parent96c3c422ad1e1bd06da37e88cdd8e200b812f8f3 (diff)
downloadgoogletest-13af91faff5aaec0a622601713bc4f8b89a8e108.zip
googletest-13af91faff5aaec0a622601713bc4f8b89a8e108.tar.gz
googletest-13af91faff5aaec0a622601713bc4f8b89a8e108.tar.bz2
Fix more stuff and get tests to pass
Diffstat (limited to 'googletest/src')
-rw-r--r--googletest/src/gtest-death-test.cc14
-rw-r--r--googletest/src/gtest-port.cc16
2 files changed, 22 insertions, 8 deletions
diff --git a/googletest/src/gtest-death-test.cc b/googletest/src/gtest-death-test.cc
index 50c15ed..a02d810 100644
--- a/googletest/src/gtest-death-test.cc
+++ b/googletest/src/gtest-death-test.cc
@@ -156,7 +156,7 @@ ExitedWithCode::ExitedWithCode(int exit_code) : exit_code_(exit_code) {
// ExitedWithCode function-call operator.
bool ExitedWithCode::operator()(int exit_status) const {
-# if GTEST_OS_WINDOWS
+# if GTEST_OS_WINDOWS || GTEST_OS_FUCHSIA
return exit_status == exit_code_;
@@ -167,7 +167,7 @@ bool ExitedWithCode::operator()(int exit_status) const {
# endif // GTEST_OS_WINDOWS
}
-# if !GTEST_OS_WINDOWS
+# if !GTEST_OS_WINDOWS && !GTEST_OS_FUCHSIA
// KilledBySignal constructor.
KilledBySignal::KilledBySignal(int signum) : signum_(signum) {
}
@@ -195,7 +195,7 @@ namespace internal {
static std::string ExitSummary(int exit_code) {
Message m;
-# if GTEST_OS_WINDOWS
+# if GTEST_OS_WINDOWS || GTEST_OS_FUCHSIA
m << "Exited with exit status " << exit_code;
@@ -866,10 +866,10 @@ int FuchsiaDeathTest::Wait() {
zx_status_t status_zx;
zx_signals_t signals;
status_zx = zx_object_wait_one(
- child_process_,
- ZX_PROCESS_TERMINATED,
- ZX_TIME_INFINITE,
- &signals);
+ child_process_,
+ ZX_PROCESS_TERMINATED,
+ ZX_TIME_INFINITE,
+ &signals);
GTEST_DEATH_TEST_CHECK_(status_zx == ZX_OK);
ReadAndInterpretStatusByte();
diff --git a/googletest/src/gtest-port.cc b/googletest/src/gtest-port.cc
index d632089..ce59586 100644
--- a/googletest/src/gtest-port.cc
+++ b/googletest/src/gtest-port.cc
@@ -64,6 +64,7 @@
#endif // GTEST_OS_AIX
#if GTEST_OS_FUCHSIA
+# include <zircon/process.h>
# include <zircon/syscalls.h>
#endif
@@ -163,7 +164,20 @@ size_t GetThreadCount() {
#elif GTEST_OS_FUCHSIA
size_t GetThreadCount() {
- return static_cast<size_t>(zx_system_get_num_cpus());
+ int dummy_buffer;
+ size_t avail;
+ zx_status_t status = zx_object_get_info(
+ zx_process_self(),
+ ZX_INFO_PROCESS_THREADS,
+ &dummy_buffer,
+ 0,
+ nullptr,
+ &avail);
+ if(status == ZX_OK) {
+ return avail;
+ } else {
+ return 0;
+ }
}
#else