# I've post mail, but it didn't show up in http://www.nabble.com/Cygwin-f12165.html. # Maybe it was not good to attach a file. So try again...
I'm not familiar with pthread & fork, but I think following code should not crash. Is this expected behavior? #include <stdio.h> #include <stdlib.h> #include <pthread.h> #include <assert.h> void *thread_func(void* args) { int ret; pid_t pid; pthread_t thread; puts("thread_func"); pid = fork(); assert(pid != (pid_t)-1); if (pid != 0) /* parent process */ { int status; printf("parent process (child pid = %d)\n", pid); waitpid(pid, &status, 0); puts("parent process end"); } else /* child process */ { puts("child process"); /* crash here */ } return args; } int main() { int ret; pthread_t thread; ret = pthread_create(&thread, NULL, thread_func, NULL); assert(ret == 0); ret = pthread_join(thread, NULL); assert(ret == 0); } // built with "gcc main.c -o main.exe" Thank you. -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/