提交 4e2ae22d authored 作者: Anthony Minessale's avatar Anthony Minessale

potential xml root readlock issue

git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@11977 d0543943-73ff-0310-b7d9-9358b9ac24b2
上级 294e7880
...@@ -347,9 +347,11 @@ SWITCH_STANDARD_API(user_data_function) ...@@ -347,9 +347,11 @@ SWITCH_STANDARD_API(user_data_function)
if ((domain = strchr(user, '@'))) { if ((domain = strchr(user, '@'))) {
*domain++ = '\0'; *domain++ = '\0';
} else { } else {
domain = "cluecon.com"; if (!(domain = switch_core_get_variable("domain"))) {
domain = "cluecon.com";
}
} }
switch_event_create(&params, SWITCH_EVENT_REQUEST_PARAMS); switch_event_create(&params, SWITCH_EVENT_REQUEST_PARAMS);
switch_event_add_header_string(params, SWITCH_STACK_BOTTOM, "user", user); switch_event_add_header_string(params, SWITCH_STACK_BOTTOM, "user", user);
switch_event_add_header_string(params, SWITCH_STACK_BOTTOM, "mailbox", user); switch_event_add_header_string(params, SWITCH_STACK_BOTTOM, "mailbox", user);
...@@ -465,16 +467,17 @@ static switch_status_t _find_user(const char *cmd, switch_core_session_t *sessio ...@@ -465,16 +467,17 @@ static switch_status_t _find_user(const char *cmd, switch_core_session_t *sessio
} }
} }
if (xml && x_user) { if (x_user) {
xmlstr = switch_xml_toxml(x_user, SWITCH_FALSE); xmlstr = switch_xml_toxml(x_user, SWITCH_FALSE);
switch_assert(xmlstr); switch_assert(xmlstr);
stream->write_function(stream, "%s", xmlstr); stream->write_function(stream, "%s", xmlstr);
free(xmlstr); free(xmlstr);
switch_xml_free(xml);
} }
} }
switch_xml_free(xml);
free(mydata); free(mydata);
return SWITCH_STATUS_SUCCESS; return SWITCH_STATUS_SUCCESS;
} }
...@@ -683,18 +686,17 @@ SWITCH_STANDARD_API(xml_locate_function) ...@@ -683,18 +686,17 @@ SWITCH_STANDARD_API(xml_locate_function)
} }
} }
if (xml && obj) { if (obj) {
xmlstr = switch_xml_toxml(obj, SWITCH_FALSE); xmlstr = switch_xml_toxml(obj, SWITCH_FALSE);
switch_assert(xmlstr); switch_assert(xmlstr);
stream->write_function(stream, "%s", xmlstr); stream->write_function(stream, "%s", xmlstr);
free(xmlstr); free(xmlstr);
switch_xml_free(xml);
} }
switch_xml_free(xml);
switch_event_destroy(&params); switch_event_destroy(&params);
free(mydata); free(mydata);
return SWITCH_STATUS_SUCCESS; return SWITCH_STATUS_SUCCESS;
} }
......
...@@ -2391,9 +2391,7 @@ static switch_call_cause_t user_outgoing_channel(switch_core_session_t *session, ...@@ -2391,9 +2391,7 @@ static switch_call_cause_t user_outgoing_channel(switch_core_session_t *session,
done: done:
if (xml) { switch_xml_free(xml);
switch_xml_free(xml);
}
if (params) { if (params) {
switch_event_destroy(&params); switch_event_destroy(&params);
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论