未验证 提交 6a80bcef 编写于 作者: B Bernard Xiong 提交者: GitHub

Merge pull request #4473 from mysterywolf/AT

[at][bug] 修复内存泄漏的bug
...@@ -8,6 +8,7 @@ ...@@ -8,6 +8,7 @@
* 2018-03-30 chenyong first version * 2018-03-30 chenyong first version
* 2018-04-12 chenyong add client implement * 2018-04-12 chenyong add client implement
* 2018-08-17 chenyong multiple client support * 2018-08-17 chenyong multiple client support
* 2021-03-17 Meco Man fix a buf of leaking memory
*/ */
#include <at.h> #include <at.h>
...@@ -104,18 +105,23 @@ void at_delete_resp(at_response_t resp) ...@@ -104,18 +105,23 @@ void at_delete_resp(at_response_t resp)
*/ */
at_response_t at_resp_set_info(at_response_t resp, rt_size_t buf_size, rt_size_t line_num, rt_int32_t timeout) at_response_t at_resp_set_info(at_response_t resp, rt_size_t buf_size, rt_size_t line_num, rt_int32_t timeout)
{ {
char *p_temp;
RT_ASSERT(resp); RT_ASSERT(resp);
if (resp->buf_size != buf_size) if (resp->buf_size != buf_size)
{ {
resp->buf_size = buf_size; resp->buf_size = buf_size;
resp->buf = (char *) rt_realloc(resp->buf, buf_size); p_temp = (char *) rt_realloc(resp->buf, buf_size);
if (!resp->buf) if (p_temp == RT_NULL)
{ {
LOG_D("No memory for realloc response buffer size(%d).", buf_size); LOG_D("No memory for realloc response buffer size(%d).", buf_size);
return RT_NULL; return RT_NULL;
} }
else
{
resp->buf = p_temp;
}
} }
resp->line_num = line_num; resp->line_num = line_num;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册