tfe stream destroy未释放plugin ctx;cJSON结构体错误的使用cjsonfree释放,正确做法是cjson delete。
This commit is contained in:
@@ -345,11 +345,11 @@ static struct keyring_private* get_keyring_from_response(const char* data)
|
|||||||
X509_free(cert);
|
X509_free(cert);
|
||||||
EVP_PKEY_free(key);
|
EVP_PKEY_free(key);
|
||||||
sk_X509_pop_free(chain, X509_free);
|
sk_X509_pop_free(chain, X509_free);
|
||||||
cJSON_free(data_json);
|
cJSON_Delete(data_json);
|
||||||
return _kyr;
|
return _kyr;
|
||||||
|
|
||||||
error_out:
|
error_out:
|
||||||
if(data_json!=NULL) cJSON_free(data_json);
|
if(data_json!=NULL) cJSON_Delete(data_json);
|
||||||
if(cert) X509_free(cert);
|
if(cert) X509_free(cert);
|
||||||
if(key) EVP_PKEY_free(key);
|
if(key) EVP_PKEY_free(key);
|
||||||
if(chain) sk_X509_pop_free(chain, X509_free);
|
if(chain) sk_X509_pop_free(chain, X509_free);
|
||||||
|
|||||||
@@ -841,12 +841,12 @@ void tfe_stream_destory(struct tfe_stream_private * stream)
|
|||||||
|
|
||||||
if (stream->head.addr)
|
if (stream->head.addr)
|
||||||
{
|
{
|
||||||
free(stream->head.addr);
|
FREE(&(stream->head.addr));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (stream->str_stream_addr)
|
if (stream->str_stream_addr)
|
||||||
{
|
{
|
||||||
free(stream->str_stream_addr);
|
FREE(&(stream->str_stream_addr));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (__is_ssl(stream) && stream->ssl_upstream)
|
if (__is_ssl(stream) && stream->ssl_upstream)
|
||||||
@@ -890,9 +890,9 @@ void tfe_stream_destory(struct tfe_stream_private * stream)
|
|||||||
{
|
{
|
||||||
future_destroy(stream->future_upstream_create);
|
future_destroy(stream->future_upstream_create);
|
||||||
}
|
}
|
||||||
|
FREE(&(stream->plugin_ctxs));
|
||||||
stream->proxy_ref = NULL;
|
stream->proxy_ref = NULL;
|
||||||
free(stream);
|
FREE(&(stream));
|
||||||
thread->load--;
|
thread->load--;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -230,7 +230,7 @@ int pangu_send_log(struct pangu_logger* handle, const struct pangu_log* log_msg)
|
|||||||
kafka_status = rd_kafka_produce(handle->kafka_topic, RD_KAFKA_PARTITION_UA, RD_KAFKA_MSG_F_COPY,
|
kafka_status = rd_kafka_produce(handle->kafka_topic, RD_KAFKA_PARTITION_UA, RD_KAFKA_MSG_F_COPY,
|
||||||
log_payload, strlen(log_payload), NULL, 0, NULL);
|
log_payload, strlen(log_payload), NULL, 0, NULL);
|
||||||
free(log_payload);
|
free(log_payload);
|
||||||
cJSON_free(per_hit_obj);
|
cJSON_Delete(per_hit_obj);
|
||||||
if(kafka_status<0)
|
if(kafka_status<0)
|
||||||
{
|
{
|
||||||
TFE_LOG_ERROR(handle->local_logger, "Kafka produce failed: %s", rd_kafka_err2name(rd_kafka_last_error()));
|
TFE_LOG_ERROR(handle->local_logger, "Kafka produce failed: %s", rd_kafka_err2name(rd_kafka_last_error()));
|
||||||
@@ -238,6 +238,6 @@ int pangu_send_log(struct pangu_logger* handle, const struct pangu_log* log_msg)
|
|||||||
send_cnt++;
|
send_cnt++;
|
||||||
}
|
}
|
||||||
|
|
||||||
cJSON_free(common_obj);
|
cJSON_Delete(common_obj);
|
||||||
return send_cnt;
|
return send_cnt;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user