From 48cdcdffb0e07baf72de6e192292f3c79eceb5d1 Mon Sep 17 00:00:00 2001 From: ChenHengming Date: Tue, 10 May 2016 12:41:06 +0000 Subject: [PATCH] [mpp_buffer]: when buffer group destroy and only legacy group remain check and dump legacy group status git-svn-id: https://10.10.10.66:8443/svn/MediaProcessPlatform/trunk/mpp@718 6e48237b-75ef-9749-8fc9-41990f28c85a --- mpp/mpp_buffer_impl.cpp | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/mpp/mpp_buffer_impl.cpp b/mpp/mpp_buffer_impl.cpp index 9aac5c16..7bdb1e64 100644 --- a/mpp/mpp_buffer_impl.cpp +++ b/mpp/mpp_buffer_impl.cpp @@ -121,6 +121,14 @@ MPP_RET deinit_group_no_lock(MppBufferGroupImpl *group) list_del_init(&group->list_group); mpp_free(group); service.group_count--; + /* if only legacy group left dump the legacy group */ + if (service.group_count == 1) { + MppBufferGroupImpl *legacy = mpp_buffer_legacy_group(); + if (legacy->count) { + mpp_log("found legacy group has buffer remain, start dumping\n"); + mpp_buffer_group_dump(legacy); + } + } return MPP_OK; } @@ -258,7 +266,7 @@ MPP_RET mpp_buffer_ref_dec(MppBufferImpl *buffer) AutoMutex auto_lock(&service.mLock); if (buffer->ref_count <= 0) { - mpp_err_f("found non-positive ref_count %d\n", buffer->ref_count); + mpp_err_f("found non-positive ref_count %d caller %s\n", buffer->ref_count, buffer->caller); return MPP_NOK; }