summaryrefslogtreecommitdiffstats
path: root/media/libstagefright/mpeg2ts
diff options
context:
space:
mode:
authorWei Jia <wjia@google.com>2014-07-18 14:27:25 -0700
committerWei Jia <wjia@google.com>2014-07-18 14:27:25 -0700
commit65eeb3c92ffc8b90eb1330fdf9a74c55f3c6b463 (patch)
treeacf8e8398dab40d01a00e33303d0938aa5b68636 /media/libstagefright/mpeg2ts
parent095248375e29adde961ec2a44989ecb3a6dda6a2 (diff)
downloadframeworks_av-65eeb3c92ffc8b90eb1330fdf9a74c55f3c6b463.zip
frameworks_av-65eeb3c92ffc8b90eb1330fdf9a74c55f3c6b463.tar.gz
frameworks_av-65eeb3c92ffc8b90eb1330fdf9a74c55f3c6b463.tar.bz2
Free MediaBuffer when ABuffer is discarded.
BUG: 15699665 Change-Id: Ie7da017cf32ccc08094fe4b01a2b07d2739770d2
Diffstat (limited to 'media/libstagefright/mpeg2ts')
-rw-r--r--media/libstagefright/mpeg2ts/AnotherPacketSource.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/media/libstagefright/mpeg2ts/AnotherPacketSource.cpp b/media/libstagefright/mpeg2ts/AnotherPacketSource.cpp
index 871824a..a0319ab 100644
--- a/media/libstagefright/mpeg2ts/AnotherPacketSource.cpp
+++ b/media/libstagefright/mpeg2ts/AnotherPacketSource.cpp
@@ -230,6 +230,11 @@ void AnotherPacketSource::queueDiscontinuity(
int32_t oldDiscontinuityType;
if (!oldBuffer->meta()->findInt32(
"discontinuity", &oldDiscontinuityType)) {
+ MediaBuffer *mbuf = NULL;
+ oldBuffer->meta()->findPointer("mediaBuffer", (void**)&mbuf);
+ if (mbuf != NULL) {
+ mbuf->release();
+ }
it = mBuffers.erase(it);
continue;
}