[test]: fix bug in mpp_buffer_test

git-svn-id: https://10.10.10.66:8443/svn/MediaProcessPlatform/trunk/mpp@146 6e48237b-75ef-9749-8fc9-41990f28c85a
This commit is contained in:
ChenHengming
2015-08-21 07:06:57 +00:00
parent 8848e46814
commit 9e5b83bc72
3 changed files with 34 additions and 28 deletions

View File

@@ -189,12 +189,12 @@ extern "C" {
*/
MPP_RET mpp_buffer_commit(MppBufferGroup group, MppBufferInfo *info);
MPP_RET mpp_buffer_get_with_tag(const char *tag, MppBufferGroup group, MppBuffer *buffer, size_t size);
MPP_RET mpp_buffer_put(MppBuffer *buffer);
MPP_RET mpp_buffer_put(MppBuffer buffer);
MPP_RET mpp_buffer_inc_ref(MppBuffer buffer);
MPP_RET mpp_buffer_info_get(MppBuffer buffer, MppBufferInfo *info);
MPP_RET mpp_buffer_group_get(const char *tag, MppBufferMode mode, MppBufferGroup *group, MppBufferType type);
MPP_RET mpp_buffer_group_put(MppBufferGroup *group);
MPP_RET mpp_buffer_group_put(MppBufferGroup group);
MPP_RET mpp_buffer_group_limit_config(MppBufferGroup group, size_t size, RK_S32 count);
#ifdef __cplusplus

View File

@@ -67,23 +67,20 @@ MPP_RET mpp_buffer_get_with_tag(const char *tag, MppBufferGroup group, MppBuffer
return (buf) ? (MPP_OK) : (MPP_NOK);
}
MPP_RET mpp_buffer_put(MppBuffer *buffer)
MPP_RET mpp_buffer_put(MppBuffer buffer)
{
if (NULL == buffer) {
mpp_err("mpp_buffer_put invalid input: buffer %p\n", buffer);
return MPP_ERR_UNKNOW;
}
if (NULL == (*buffer))
return MPP_ERR_NULL_PTR;
return mpp_buffer_ref_dec((MppBufferImpl*)*buffer);
return mpp_buffer_ref_dec((MppBufferImpl*)buffer);
}
MPP_RET mpp_buffer_inc_ref(MppBuffer buffer)
{
if (NULL == buffer) {
mpp_err("mpp_buffer_put invalid input: buffer %p\n", buffer);
mpp_err("mpp_buffer_inc_ref invalid input: buffer %p\n", buffer);
return MPP_ERR_UNKNOW;
}
@@ -93,7 +90,7 @@ MPP_RET mpp_buffer_inc_ref(MppBuffer buffer)
MPP_RET mpp_buffer_info_get(MppBuffer buffer, MppBufferInfo *info)
{
if (NULL == buffer || NULL == info) {
mpp_err("mpp_buffer_put invalid input: buffer %p info %p\n", buffer, info);
mpp_err("mpp_buffer_info_get invalid input: buffer %p info %p\n", buffer, info);
return MPP_ERR_UNKNOW;
}
@@ -115,17 +112,14 @@ MPP_RET mpp_buffer_group_get(const char *tag, MppBufferMode mode,
return mpp_buffer_group_init((MppBufferGroupImpl**)group, tag, mode, type);
}
MPP_RET mpp_buffer_group_put(MppBufferGroup *group)
MPP_RET mpp_buffer_group_put(MppBufferGroup group)
{
if (NULL == group) {
mpp_err("mpp_buffer_group_put input invalid group %p\n", group);
return MPP_NOK;
}
MppBufferGroupImpl *p = (MppBufferGroupImpl *)*group;
*group = NULL;
return mpp_buffer_group_deinit(p);
return mpp_buffer_group_deinit((MppBufferGroupImpl *)group);
}
MPP_RET mpp_buffer_group_limit_config(MppBufferGroup group, size_t size, RK_S32 count)

View File

@@ -81,11 +81,14 @@ int main()
}
for (i = 0; i < count; i++) {
ret = mpp_buffer_put(&commit_buffer[i]);
if (commit_buffer[i]) {
ret = mpp_buffer_put(commit_buffer[i]);
if (MPP_OK != ret) {
mpp_err("mpp_buffer_test mpp_buffer_put commit mode failed\n");
goto MPP_BUFFER_failed;
}
commit_buffer[i] = NULL;
}
}
for (i = 0; i < count; i++) {
@@ -95,7 +98,7 @@ int main()
}
}
mpp_buffer_group_put(&group);
mpp_buffer_group_put(group);
mpp_log("mpp_buffer_test commit mode success\n");
@@ -116,24 +119,30 @@ int main()
}
for (i = 0; i < MPP_BUFFER_TEST_NORMAL_COUNT; i++) {
ret = mpp_buffer_put(&normal_buffer[i]);
if (normal_buffer[i]) {
ret = mpp_buffer_put(normal_buffer[i]);
if (MPP_OK != ret) {
mpp_err("mpp_buffer_test mpp_buffer_get mode normal failed\n");
goto MPP_BUFFER_failed;
}
normal_buffer[i] = NULL;
}
}
mpp_log("mpp_buffer_test normal mode success\n");
if (group)
mpp_buffer_group_put(&group);
if (group) {
mpp_buffer_group_put(group);
group = NULL;
}
mpp_log("mpp_buffer_test success\n");
return ret;
MPP_BUFFER_failed:
for (i = 0; i < MPP_BUFFER_TEST_COMMIT_COUNT; i++) {
mpp_buffer_put(&commit_buffer[i]);
if (commit_buffer[i])
mpp_buffer_put(commit_buffer[i]);
}
for (i = 0; i < MPP_BUFFER_TEST_COMMIT_COUNT; i++) {
@@ -143,11 +152,14 @@ MPP_BUFFER_failed:
}
}
for (i = 0; i < MPP_BUFFER_TEST_NORMAL_COUNT; i++) {
mpp_buffer_put(&normal_buffer[i]);
if (normal_buffer[i])
mpp_buffer_put(normal_buffer[i]);
}
if (group)
if (group) {
mpp_buffer_group_put(group);
group = NULL;
}
mpp_log("mpp_buffer_test failed\n");
return ret;