esp_http_client: Optimize code structure

This commit is contained in:
yuanjm
2021-02-07 11:37:49 +08:00
parent 308c31e2f1
commit e309a0ea6f
3 changed files with 30 additions and 38 deletions

View File

@@ -63,25 +63,25 @@ char *http_utils_assign_string(char **str, const char *new_str, int len)
char *http_utils_append_string(char **str, const char *new_str, int len)
{
if (new_str == NULL) {
return NULL;
}
int l = len;
int old_len = 0;
char *old_str = *str;
if (len <= 0) {
len = strlen(new_str);
if (new_str != NULL) {
if (l < 0) {
l = strlen(new_str);
}
if (old_str) {
old_len = strlen(old_str);
old_str = realloc(old_str, old_len + l + 1);
mem_check(old_str);
old_str[old_len + l] = 0;
} else {
old_str = calloc(1, l + 1);
mem_check(old_str);
}
memcpy(old_str + old_len, new_str, l);
*str = old_str;
}
if (old_str) {
int old_len = strlen(old_str);
old_str = realloc(old_str, old_len + len + 1);
mem_check(old_str);
memcpy(old_str + old_len, new_str, len);
old_str[old_len + len] = 0;
} else {
old_str = calloc(1, len + 1);
mem_check(old_str);
memcpy(old_str, new_str, len);
}
*str = old_str;
return old_str;
}