Make stasis unsubscription functions return NULL

Unsubscribing things in Asterisk seems to very commonly follow with
NULLing out the variable that was unsubscribed. This change makes that
a bit simpler.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@383168 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Kinsey Moore
2013-03-15 12:58:23 +00:00
parent ad5f3a5759
commit 8c444f823b
3 changed files with 9 additions and 5 deletions

View File

@@ -172,7 +172,7 @@ struct stasis_subscription *stasis_subscribe(struct stasis_topic *topic, stasis_
return __stasis_subscribe(topic, callback, data, 1);
}
void stasis_unsubscribe(struct stasis_subscription *sub)
struct stasis_subscription *stasis_unsubscribe(struct stasis_subscription *sub)
{
if (sub) {
size_t i;
@@ -186,12 +186,13 @@ void stasis_unsubscribe(struct stasis_subscription *sub)
topic->subscribers[i] = topic->subscribers[--topic->num_subscribers_current];
/* Unsubscribing unrefs the subscription */
ao2_cleanup(sub);
return;
return NULL;
}
}
ast_log(LOG_ERROR, "Internal error: subscription has invalid topic\n");
}
return NULL;
}
int stasis_subscription_is_subscribed(const struct stasis_subscription *sub)