aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--googletest/src/gtest.cc7
-rw-r--r--googletest/test/googletest-death-test-test.cc2
2 files changed, 7 insertions, 2 deletions
diff --git a/googletest/src/gtest.cc b/googletest/src/gtest.cc
index 9a17180..6662a13 100644
--- a/googletest/src/gtest.cc
+++ b/googletest/src/gtest.cc
@@ -661,11 +661,14 @@ static ::std::vector<std::string> g_argvs;
FilePath GetCurrentExecutableName() {
FilePath result;
+ auto args = GetArgvs();
+ if (!args.empty()) {
#if defined(GTEST_OS_WINDOWS) || defined(GTEST_OS_OS2)
- result.Set(FilePath(GetArgvs()[0]).RemoveExtension("exe"));
+ result.Set(FilePath(args[0]).RemoveExtension("exe"));
#else
- result.Set(FilePath(GetArgvs()[0]));
+ result.Set(FilePath(args[0]));
#endif // GTEST_OS_WINDOWS
+ }
return result.RemoveDirectoryName();
}
diff --git a/googletest/test/googletest-death-test-test.cc b/googletest/test/googletest-death-test-test.cc
index 75742c9..44b8046 100644
--- a/googletest/test/googletest-death-test-test.cc
+++ b/googletest/test/googletest-death-test-test.cc
@@ -291,7 +291,9 @@ TEST(ExitStatusPredicateTest, KilledBySignal) {
const int status_kill = KilledExitStatus(SIGKILL);
const testing::KilledBySignal pred_segv(SIGSEGV);
const testing::KilledBySignal pred_kill(SIGKILL);
+#if !(defined(GTEST_OS_LINUX_ANDROID) && __ANDROID_API__ <= 21)
EXPECT_PRED1(pred_segv, status_segv);
+#endif
EXPECT_PRED1(pred_kill, status_kill);
EXPECT_FALSE(pred_segv(status_kill));
EXPECT_FALSE(pred_kill(status_segv));