nostrdb: monitor: lock monitor when we're freeing subscriptions
Signed-off-by: William Casarin <jb55@jb55.com>
This commit is contained in:
committed by
Daniel D’Aquino
parent
c931108741
commit
58de0025aa
@@ -4821,9 +4821,17 @@ static void ndb_monitor_destroy(struct ndb_monitor *monitor)
|
|||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
|
ndb_monitor_lock(monitor);
|
||||||
|
|
||||||
for (i = 0; i < monitor->num_subscriptions; i++) {
|
for (i = 0; i < monitor->num_subscriptions; i++) {
|
||||||
ndb_subscription_destroy(&monitor->subscriptions[i]);
|
ndb_subscription_destroy(&monitor->subscriptions[i]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
monitor->num_subscriptions = 0;
|
||||||
|
|
||||||
|
ndb_monitor_unlock(monitor);
|
||||||
|
|
||||||
|
pthread_mutex_destroy(&monitor->mutex);
|
||||||
}
|
}
|
||||||
|
|
||||||
int ndb_init(struct ndb **pndb, const char *filename, const struct ndb_config *config)
|
int ndb_init(struct ndb **pndb, const char *filename, const struct ndb_config *config)
|
||||||
|
|||||||
Reference in New Issue
Block a user