/** grab clients that are not yet attached to a filter node */
struct list_head inactive_grab_client_list;
/** grab clients that are not yet attached to a filter node */
struct list_head inactive_grab_client_list;
for (i = 0; audio_formats[i]; i++) {
PARA_INFO_LOG("%s filter chain length: %d\n", audio_formats[i],
num_filters(i));
for (i = 0; audio_formats[i]; i++) {
PARA_INFO_LOG("%s filter chain length: %d\n", audio_formats[i],
num_filters(i));
- do {
- FD_ZERO(&wfds);
- FD_SET(gc->fd, &wfds);
- ret = select(gc->fd + 1, NULL, &wfds, NULL, &tv);
- } while (ret == EAGAIN || ret == EINTR);
- if (ret != 1) {
+ FD_ZERO(&wfds);
+ FD_SET(gc->fd, &wfds);
+ ret = para_select(gc->fd + 1, NULL, &wfds, &tv);
+ if (ret <= 0) {
if (conf->audio_format_given) {
gc->audio_format_num = get_audio_format_num(conf->audio_format_arg);
if (gc->audio_format_num < 0)
if (conf->audio_format_given) {
gc->audio_format_num = get_audio_format_num(conf->audio_format_arg);
if (gc->audio_format_num < 0)
-__malloc struct grab_client *grab_client_new(int fd, int argc, char **argv, int *err)
+struct grab_client *grab_client_new(int fd, int argc, char **argv, int *err)
{
int i, ret;
struct grab_client *gc = para_calloc(sizeof(struct grab_client));
gc->conf = para_calloc(sizeof(struct grab_client_args_info));
gc->argc = argc;
{
int i, ret;
struct grab_client *gc = para_calloc(sizeof(struct grab_client));
gc->conf = para_calloc(sizeof(struct grab_client_args_info));
gc->argc = argc;
gc->argv[i] = para_strdup(argv[i]);
PARA_INFO_LOG("argc: %d, argv[%d]: %s\n", argc, i, gc->argv[i]);
}
gc->argv[i] = para_strdup(argv[i]);
PARA_INFO_LOG("argc: %d, argv[%d]: %s\n", argc, i, gc->argv[i]);
}