Add _Fork().
POSIX issue 8 function, already in musl/glibc (but not iOS/macOS).
Bug: https://austingroupbugs.net/view.php?id=62
Test: treehugger
Change-Id: Id51611afdab92dff36a540b7d8737fc0e31f3d36
diff --git a/tests/unistd_test.cpp b/tests/unistd_test.cpp
index 6c08972..78b55c1 100644
--- a/tests/unistd_test.cpp
+++ b/tests/unistd_test.cpp
@@ -440,6 +440,22 @@
TestSyncFunction(syncfs);
}
+TEST(UNISTD_TEST, _Fork) {
+#if defined(__BIONIC__)
+ pid_t rc = _Fork();
+ ASSERT_NE(-1, rc);
+ if (rc == 0) {
+ _exit(66);
+ }
+
+ int status;
+ pid_t wait_result = waitpid(rc, &status, 0);
+ ASSERT_EQ(wait_result, rc);
+ ASSERT_TRUE(WIFEXITED(status));
+ ASSERT_EQ(66, WEXITSTATUS(status));
+#endif
+}
+
TEST(UNISTD_TEST, vfork) {
#if defined(__BIONIC__)
pthread_internal_t* self = __get_thread();