From: Jaroslav Kysela Date: Tue, 27 Apr 2004 13:38:59 +0000 (+0000) Subject: amorac X-Git-Tag: v1.0.5~6 X-Git-Url: https://git.alsa-project.org/?a=commitdiff_plain;h=25141facf09f6eb94dea9cf3e0048ae4205b63ee;p=alsa-utils.git amorac arecord doesn't record if you don't indicate the time limit The problem happens when the Wave-file is checked for it being even. I have tried with the next change in aplay.c and it seems to work fine. --- diff --git a/aplay/aplay.c b/aplay/aplay.c index 491cb0d..d7ad0fb 100644 --- a/aplay/aplay.c +++ b/aplay/aplay.c @@ -1922,7 +1922,10 @@ static void capture(char *name) pbrec_count = calc_count(); /* WAVE-file should be even (I'm not sure), but wasting one byte isn't a problem (this can only be in 8 bit mono) */ - pbrec_count += pbrec_count % 2; + if (pbrec_count < LLONG_MAX) + pbrec_count += pbrec_count % 2; + else + pbrec_count -= pbrec_count % 2; if (pbrec_count == 0) pbrec_count -= 2; if (fmt_rec_table[file_type].start)