projects
/
paraslash.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 't/nonblock_api'
[paraslash.git]
/
audiod.c
diff --git
a/audiod.c
b/audiod.c
index
4a4a2ae
..
778318c
100644
(file)
--- a/
audiod.c
+++ b/
audiod.c
@@
-980,19
+980,16
@@
static void signal_pre_select(struct sched *s, struct task *t)
para_fd_set(st->fd, &s->rfds, &s->max_fileno);
}
para_fd_set(st->fd, &s->rfds, &s->max_fileno);
}
-static void signal_post_select(struct sched *s, struct task *t)
+static void signal_post_select(struct sched *s,
__a_unused
struct task *t)
{
{
- struct signal_task *st = container_of(t, struct signal_task, task);
-
- if (!FD_ISSET(st->fd, &s->rfds))
- return;
+ int signum;
- s
t->signum = para_next_signal(
);
- switch (s
t->s
ignum) {
+ s
ignum = para_next_signal(&s->rfds
);
+ switch (signum) {
case SIGINT:
case SIGTERM:
case SIGHUP:
case SIGINT:
case SIGTERM:
case SIGHUP:
- PARA_EMERG_LOG("terminating on signal %d\n", s
t->s
ignum);
+ PARA_EMERG_LOG("terminating on signal %d\n", signum);
clean_exit(EXIT_FAILURE, "caught deadly signal");
}
}
clean_exit(EXIT_FAILURE, "caught deadly signal");
}
}
@@
-1023,9
+1020,7
@@
static void command_post_select(struct sched *s, struct task *t)
last_status_dump = *now;
}
last_status_dump = *now;
}
- if (!FD_ISSET(ct->fd, &s->rfds))
- return;
- ret = handle_connect(ct->fd);
+ ret = handle_connect(ct->fd, &s->rfds);
if (ret < 0)
PARA_ERROR_LOG("%s\n", para_strerror(-ret));
audiod_status_dump();
if (ret < 0)
PARA_ERROR_LOG("%s\n", para_strerror(-ret));
audiod_status_dump();