/*
- * Copyright (C) 2006-2008 Andre Noll <maan@systemlinux.org>
+ * Copyright (C) 2006-2009 Andre Noll <maan@systemlinux.org>
*
* Licensed under the GPL v2. For licencing details see COPYING.
*/
#include "grab_client.cmdline.h"
#include "list.h"
#include "sched.h"
+#include "ggo.h"
#include "filter.h"
#include "grab_client.h"
#include "audiod.h"
{
int i;
struct grab_client_args_info *c = gc->conf;
- char **mv = grab_client_cmdline_parser_mode_values;
+ const char **mv = grab_client_cmdline_parser_mode_values;
PARA_INFO_LOG("filter_num: %d\n", c->filter_num_arg);
for (i = 0; mv[i]; i++)
if (gc->audio_format_num < 0)
return gc->audio_format_num;
}
- if (c->slot_arg > MAX_STREAM_SLOTS)
+ if (c->slot_arg >= MAX_STREAM_SLOTS)
return -E_BAD_GC_SLOT;
- if (c->filter_num_arg <= 0)
+ if (c->filter_num_arg < 0)
return -E_BAD_GC_FILTER_NUM;
if (c->audio_format_given) {
- if (num_filters(gc->audio_format_num) < c->filter_num_arg)
+ if (num_filters(gc->audio_format_num) <= c->filter_num_arg)
return -E_BAD_GC_FILTER_NUM;
} else
- if (c->filter_num_arg > max_num_filters())
+ if (c->filter_num_arg >= max_num_filters())
return -E_BAD_GC_FILTER_NUM;
return 1;
*
* \param slot_num Audiod's slot for the new audio file.
* \param audio_format_num The number of the audio format of the new audio file.
- * \param filter_list The list of activated filters for that new audio file.
+ * \param fc The filter chain containing the activated filters.
*
* This is called from audiod.c when the current audio file changes. It loops
* over all inactive grab clients and checks each grab client's configuration
audio_format_num)
continue;
filter_num = gc->conf->filter_num_arg;
- if (filter_num >= 0 && filter_num >= num_filters(gc->audio_format_num))
+ if (filter_num >= num_filters(gc->audio_format_num))
continue;
- if (filter_num < 0)
- filter_num = 0;
fn = fc->filter_nodes + filter_num;
activate_grab_client(gc, fn);
}