----- Ursprüngliche Mail ----- > + if (!__Terrno(ret, sigaction(SIGSEGV, &sa, &old_sa))) > + goto out; > + > + if (!__Terrno(ret, iopl(3))) > + goto out; > + > + if (!__T(ret, pthread_create(&pt, NULL, tfn, NULL))) > + goto out; > + > + if (!__T(ret, pthread_join(pt, (void *)&ptret))) > + goto out; > + > + if (!__Terrno(ret, sigaction(SIGSEGV, &old_sa, NULL))) > + goto out; > + > +out:
I missed here to restore old_sa. ;-\ If iopl(), pthread_create() or pthread_join() fail we end up with the current signal handler for SIGSEGV. Will fix in a later v2. Thanks, //richard