From 4d97ad948babaa3dd5093cc6e3b2281f11b40472 Mon Sep 17 00:00:00 2001 From: David McPaul Date: Sat, 2 May 2009 04:32:01 +0000 Subject: [PATCH] return LAST_BUFFER_ERROR when last buffer reached git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30549 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/add-ons/media/plugins/avcodec/avcodec.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/add-ons/media/plugins/avcodec/avcodec.cpp b/src/add-ons/media/plugins/avcodec/avcodec.cpp index a5dcf412a1..d56e39fca1 100644 --- a/src/add-ons/media/plugins/avcodec/avcodec.cpp +++ b/src/add-ons/media/plugins/avcodec/avcodec.cpp @@ -467,8 +467,13 @@ avCodec::Decode(void *out_buffer, int64 *out_frameCount, media_header chunk_mh; status_t err; err = GetNextChunk(&fChunkBuffer, &fChunkBufferSize, &chunk_mh); + if (err == B_LAST_BUFFER_ERROR) { + TRACE("Last Chunk with chunk size %ld\n",fChunkBufferSize); + fChunkBufferSize = 0; + return err; + } if (err != B_OK || fChunkBufferSize < 0) { - TRACE("GetNextChunk error %ld\n",fChunkBufferSize); + printf("GetNextChunk error %ld\n",fChunkBufferSize); fChunkBufferSize = 0; break; }