{
epggrab_module_int_t *mod = m;
free((char *)mod->path);
+ mod->path = NULL;
}
epggrab_module_int_t *epggrab_module_int_create
shutdown(sock, SHUT_RDWR);
close(sock);
if (mod->tid) {
- pthread_kill(mod->tid, SIGTERM);
+ pthread_kill(mod->tid, SIGQUIT);
pthread_join(mod->tid, NULL);
}
mod->tid = 0;
return f;
}
+static void doquit(int sig)
+{
+}
struct
thread_state {
sigemptyset(&set);
sigaddset(&set, SIGTERM);
+ sigaddset(&set, SIGQUIT);
pthread_sigmask(SIG_UNBLOCK, &set, NULL);
signal(SIGTERM, doexit);
+ signal(SIGQUIT, doquit);
/* Run */
tvhtrace("thread", "created thread %ld [%s / %p(%p)]",