[mpp_buffer]: add buffer check on buffer size

git-svn-id: https://10.10.10.66:8443/svn/MediaProcessPlatform/trunk/mpp@349 6e48237b-75ef-9749-8fc9-41990f28c85a
This commit is contained in:
ChenHengming
2015-10-12 14:55:18 +00:00
parent 5449174411
commit d09f2d736e
3 changed files with 9 additions and 4 deletions

View File

@@ -197,9 +197,8 @@ RK_S32 mpp_buffer_group_unused(MppBufferGroup group)
MPP_RET mpp_buffer_group_limit_config(MppBufferGroup group, size_t size, RK_S32 count)
{
if (NULL == group || 0 == size || count <= 0) {
mpp_err_f("input invalid group %p size %d count %d\n",
group, size, count);
if (NULL == group) {
mpp_err_f("input invalid group %p\n", group);
return MPP_NOK;
}

View File

@@ -138,11 +138,17 @@ MPP_RET mpp_buffer_create(const char *tag, RK_U32 group_id, MppBufferInfo *info)
mpp_err_f("can not create buffer without group\n");
return MPP_NOK;
}
if (group->limit_count && group->count >= group->limit_count) {
mpp_err_f("reach group count limit %d\n", group->limit_count);
return MPP_NOK;
}
if (group->limit_size && info->size > group->limit_size) {
mpp_err_f("required size %d reach group size limit %d\n", info->size, group->limit_size);
return MPP_NOK;
}
MppBufferImpl *p = mpp_calloc(MppBufferImpl, 1);
if (NULL == p) {
mpp_err_f("failed to allocate context\n");

View File

@@ -110,7 +110,7 @@ int main()
count = MPP_BUFFER_TEST_NORMAL_COUNT;
mpp_buffer_group_limit_config(group, size, count);
mpp_buffer_group_limit_config(group, 0, count);
for (i = 0; i < count; i++) {
ret = mpp_buffer_get(group, &normal_buffer[i], (i + 1) * SZ_1K);