提交 10f64224 authored 作者: Chris Rienzo's avatar Chris Rienzo

FS-11691 [core] fix switch_log_node_dup() so that it completely duplicates log nodes

上级 3d8e54e6
...@@ -108,15 +108,21 @@ SWITCH_DECLARE(switch_log_node_t *) switch_log_node_dup(const switch_log_node_t ...@@ -108,15 +108,21 @@ SWITCH_DECLARE(switch_log_node_t *) switch_log_node_dup(const switch_log_node_t
switch_log_node_t *newnode = switch_log_node_alloc(); switch_log_node_t *newnode = switch_log_node_alloc();
*newnode = *node; *newnode = *node;
newnode->content = NULL;
if (!zstr(node->data)) { if (node->data) {
newnode->data = strdup(node->data); newnode->data = strdup(node->data);
switch_assert(node->data); switch_assert(newnode->data);
// content is a pointer inside data; need to calculate the new pointer
if (node->content && node->content >= node->data) {
newnode->content = newnode->data + (node->content - node->data);
}
} }
if (!zstr(node->userdata)) { if (node->userdata) {
newnode->userdata = strdup(node->userdata); newnode->userdata = strdup(node->userdata);
switch_assert(node->userdata); switch_assert(newnode->userdata);
} }
return newnode; return newnode;
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论