assert(global_socket[0]);
return global_socket;
}
-
+
+bool test_is_local()
+{
+ return (getenv("LIBTEST_LOCAL"));
+}
+
void set_default_socket(const char *socket)
{
strncpy(global_socket, socket, strlen(socket));
int error;
while ((error= sigwait(set, &sig)) == EINTR) ;
- std::cerr << std::endl << "Signal handling thread got signal " << strsignal(sig) << std::endl;
switch (sig)
{
case SIGSEGV:
case SIGINT:
case SIGABRT:
+ std::cerr << std::endl << "Signal handling thread got signal " << strsignal(sig) << std::endl;
__shutdown= SHUTDOWN_FORCED;
+ break;
default:
+ std::cerr << std::endl << "Signal handling thread got unexpected signal " << strsignal(sig) << std::endl;
+ case SIGUSR1:
break;
}
}
sigaddset(&set, SIGSEGV);
sigaddset(&set, SIGABRT);
sigaddset(&set, SIGINT);
+ sigaddset(&set, SIGUSR1);
int error;
if ((error= pthread_sigmask(SIG_BLOCK, &set, NULL)) != 0)
get_world(world);
test_return_t error;
- void *creators_ptr= world->create(&error);
+ void *creators_ptr= world->create(error);
if (test_failed(error))
{
std::cerr << "create() failed" << std::endl;
stats_print(&stats);
+ void *retval;
+ pthread_kill(thread, SIGUSR1);
+ pthread_join(thread, &retval);
+
delete world;
return stats.failed == 0 and __shutdown == SHUTDOWN_GRACEFUL ? EXIT_SUCCESS : EXIT_FAILURE;