summaryrefslogtreecommitdiff
path: root/main
diff options
context:
space:
mode:
Diffstat (limited to 'main')
-rw-r--r--main/stasis.c5
-rw-r--r--main/stasis_cache.c3
2 files changed, 5 insertions, 3 deletions
diff --git a/main/stasis.c b/main/stasis.c
index d1f11537e..7f18bf5e1 100644
--- a/main/stasis.c
+++ b/main/stasis.c
@@ -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)
diff --git a/main/stasis_cache.c b/main/stasis_cache.c
index f8518ce09..a82492870 100644
--- a/main/stasis_cache.c
+++ b/main/stasis_cache.c
@@ -65,7 +65,7 @@ struct stasis_topic *stasis_caching_get_topic(struct stasis_caching_topic *cachi
return caching_topic->topic;
}
-void stasis_caching_unsubscribe(struct stasis_caching_topic *caching_topic)
+struct stasis_caching_topic *stasis_caching_unsubscribe(struct stasis_caching_topic *caching_topic)
{
if (caching_topic) {
if (stasis_subscription_is_subscribed(caching_topic->sub)) {
@@ -74,6 +74,7 @@ void stasis_caching_unsubscribe(struct stasis_caching_topic *caching_topic)
ast_log(LOG_ERROR, "stasis_caching_topic unsubscribed multiple times\n");
}
}
+ return NULL;
}
struct cache_entry {