diff options
-rw-r--r-- | main/channel_internal_api.c | 3 | ||||
-rw-r--r-- | main/manager.c | 3 | ||||
-rw-r--r-- | tests/test_stasis.c | 6 |
3 files changed, 4 insertions, 8 deletions
diff --git a/main/channel_internal_api.c b/main/channel_internal_api.c index d646d8485..0867524d6 100644 --- a/main/channel_internal_api.c +++ b/main/channel_internal_api.c @@ -1367,8 +1367,7 @@ void ast_channel_internal_cleanup(struct ast_channel *chan) ast_string_field_free_memory(chan); - stasis_unsubscribe(chan->forwarder); - chan->forwarder = NULL; + chan->forwarder = stasis_unsubscribe(chan->forwarder); ao2_cleanup(chan->topic); chan->topic = NULL; diff --git a/main/manager.c b/main/manager.c index d5d5ccc26..821fde8db 100644 --- a/main/manager.c +++ b/main/manager.c @@ -7590,8 +7590,7 @@ static void manager_shutdown(void) { struct ast_manager_user *user; - stasis_unsubscribe(channel_state_sub); - channel_state_sub = NULL; + channel_state_sub = stasis_unsubscribe(channel_state_sub); if (registered) { ast_manager_unregister("Ping"); diff --git a/tests/test_stasis.c b/tests/test_stasis.c index 36822941e..fb81ecde3 100644 --- a/tests/test_stasis.c +++ b/tests/test_stasis.c @@ -276,8 +276,7 @@ AST_TEST_DEFINE(subscription_messages) ao2_ref(consumer, +1); expected_uniqueid = ast_strdup(stasis_subscription_uniqueid(uut)); - stasis_unsubscribe(uut); - uut = NULL; + uut = stasis_unsubscribe(uut); complete = consumer_wait_for_completion(consumer); ast_test_validate(test, 1 == complete); @@ -376,8 +375,7 @@ AST_TEST_DEFINE(unsubscribe_stops_messages) ast_test_validate(test, NULL != uut); ao2_ref(consumer, +1); - stasis_unsubscribe(uut); - uut = NULL; + uut = stasis_unsubscribe(uut); test_data = ao2_alloc(1, NULL); ast_test_validate(test, NULL != test_data); |