diff --git a/daemon/call.c b/daemon/call.c index 536890693..4a9679595 100644 --- a/daemon/call.c +++ b/daemon/call.c @@ -4698,6 +4698,7 @@ del_all: ilog(LOG_INFO, "Deleting entire call"); rwlock_unlock_w(&c->master_lock); call_destroy(c); + update = false; } goto success; diff --git a/daemon/redis.c b/daemon/redis.c index bc881ccfd..91df25f30 100644 --- a/daemon/redis.c +++ b/daemon/redis.c @@ -2743,6 +2743,9 @@ void redis_delete(struct call *c, struct redis *r) { if (!r) return; + if (c->foreign_call) + return; + if (delete_async) { LOCK(&r->async_lock); rwlock_lock_r(&c->master_lock);