From 1cba9ddca27b8f9029ede947415beaec8f0bccbf Mon Sep 17 00:00:00 2001 From: ChenHengming Date: Wed, 20 Jul 2016 09:50:44 +0000 Subject: [PATCH] [mpp_buffer]: fix mpp_buffer log counter error git-svn-id: https://10.10.10.66:8443/svn/MediaProcessPlatform/trunk/mpp@1054 6e48237b-75ef-9749-8fc9-41990f28c85a --- mpp/base/mpp_buffer_impl.cpp | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/mpp/base/mpp_buffer_impl.cpp b/mpp/base/mpp_buffer_impl.cpp index 58ed8ec6..9e63c0d6 100644 --- a/mpp/base/mpp_buffer_impl.cpp +++ b/mpp/base/mpp_buffer_impl.cpp @@ -139,13 +139,16 @@ void buffer_group_add_log(MppBufferGroupImpl *group, MppBufferImpl *buffer, MppB log->ops = ops; log->ref_count = (buffer) ? (buffer->ref_count) : (0); log->caller = caller; + + if (group->log_count >= BUFFER_OPS_MAX_COUNT) { + struct list_head *tmp = logs->next; + list_del_init(tmp); + mpp_free(list_entry(tmp, MppBufLog, list)); + group->log_count--; + } + list_add_tail(&log->list, logs); + group->log_count++; } - if (group->log_count >= BUFFER_OPS_MAX_COUNT) { - struct list_head *tmp = logs->next; - list_del_init(tmp); - mpp_free(list_entry(tmp, MppBufLog, list)); - } - list_add_tail(&log->list, logs); } }