From 57e473b61cf373f8d9befb03d359b999eca4262b Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Sat, 4 Sep 2004 00:27:36 +0000 Subject: add support for automatic termination of the daemon after the last client quit remove all gcc warnings add boolean types for tagstruct and modargs git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@178 fefdeb5f-60dc-0310-8127-8f9354f1896f --- polyp/module-oss.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) (limited to 'polyp/module-oss.c') diff --git a/polyp/module-oss.c b/polyp/module-oss.c index 403716fd..4fd79624 100644 --- a/polyp/module-oss.c +++ b/polyp/module-oss.c @@ -177,7 +177,7 @@ int pa_module_init(struct pa_core *c, struct pa_module*m) { int fd = -1; int nfrags, frag_size, in_frag_size, out_frag_size; int mode; - uint32_t record = 1, playback = 1; + int record = 1, playback = 1; struct pa_sample_spec ss; struct pa_modargs *ma = NULL; assert(c && m); @@ -187,20 +187,21 @@ int pa_module_init(struct pa_core *c, struct pa_module*m) { goto fail; } - if (pa_modargs_get_value_u32(ma, "record", &record) < 0 || pa_modargs_get_value_u32(ma, "playback", &playback) < 0) { + if (pa_modargs_get_value_boolean(ma, "record", &record) < 0 || pa_modargs_get_value_boolean(ma, "playback", &playback) < 0) { fprintf(stderr, __FILE__": record= and playback= expect numeric argument.\n"); goto fail; } - mode = (playback&&record) ? O_RDWR : (playback ? O_WRONLY : (record ? O_RDONLY : 0)); - if (mode == 0) { + if (!playback && !record) { fprintf(stderr, __FILE__": neither playback nor record enabled for device.\n"); goto fail; } + mode = (playback&&record) ? O_RDWR : (playback ? O_WRONLY : (record ? O_RDONLY : 0)); + nfrags = 12; frag_size = 1024; - if (pa_modargs_get_value_u32(ma, "fragments", &nfrags) < 0 || nfrags < 2 || pa_modargs_get_value_u32(ma, "fragment_size", &frag_size) < 0 || frag_size < 1) { + if (pa_modargs_get_value_s32(ma, "fragments", &nfrags) < 0 || nfrags < 2 || pa_modargs_get_value_s32(ma, "fragment_size", &frag_size) < 0 || frag_size < 1) { fprintf(stderr, __FILE__": failed to parse fragments arguments\n"); goto fail; } -- cgit