From a81b1b674443eb80d9f5ee56f78cf3739adf4cfd Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Sat, 23 Aug 2008 21:11:15 -0700 Subject: xfade: gracefully fail on very short xfade times It's possible to calculate an impossibly small value that we don't have a chance to xfade. Don't die if we can't find the boundary to start crossfading on --- src/outputBuffer_xfade.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/outputBuffer_xfade.h') diff --git a/src/outputBuffer_xfade.h b/src/outputBuffer_xfade.h index 48084c44b..336a7adc2 100644 --- a/src/outputBuffer_xfade.h +++ b/src/outputBuffer_xfade.h @@ -48,7 +48,8 @@ static size_t calculate_xfade_chunks(struct iovec vec[2]) assert(c); } while (chunks && c->seq == ob.seq_decoder); assert((c = get_chunk(vec, chunks))); - assert(c->seq != ob.seq_decoder); + if (!chunks && c->seq != ob.seq_decoder) + return 0; /* nothing to xfade */ ++chunks; assert((c = get_chunk(vec, chunks))); assert(c->seq == ob.seq_decoder); -- cgit v1.2.3