mirror of
https://github.com/asterisk/asterisk.git
synced 2025-10-12 15:45:18 +00:00
Fix /stasis/res/app_replaced unit test.
A typo in recent changes caused the JSON ApplicationReplaced message to fail to build, so the message wasn't being sent out the WebSocket. Related, the replaced application would also unregister itself when it disconnected, which would actually unregister the new application. This was also fixed. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@395527 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -221,7 +221,7 @@ void app_update(struct app *app, stasis_app_cb handler, void *data)
|
||||
|
||||
msg = ast_json_pack("{s: s, s: s}",
|
||||
"type", "ApplicationReplaced",
|
||||
"application", app_name);
|
||||
"application", app->name);
|
||||
if (msg) {
|
||||
app_send(app, msg);
|
||||
}
|
||||
|
@@ -113,6 +113,19 @@ static void app_handler(void *data, const char *app_name,
|
||||
{
|
||||
struct event_session *session = data;
|
||||
int res;
|
||||
const char *msg_type = S_OR(
|
||||
ast_json_string_get(ast_json_object_get(message, "type")),
|
||||
"");
|
||||
const char *msg_application = S_OR(
|
||||
ast_json_string_get(ast_json_object_get(message, "application")),
|
||||
"");
|
||||
|
||||
/* Determine if we've been replaced */
|
||||
if (strcmp(msg_type, "ApplicationReplaced") == 0 &&
|
||||
strcmp(msg_application, app_name) == 0) {
|
||||
ao2_find(session->websocket_apps, msg_application,
|
||||
OBJ_UNLINK | OBJ_NODATA);
|
||||
}
|
||||
|
||||
res = ast_json_object_set(message, "application",
|
||||
ast_json_string_create(app_name));
|
||||
|
Reference in New Issue
Block a user