From e72613093e4a6858f9e2b11551fb728aae34e996 Mon Sep 17 00:00:00 2001 From: nekobit Date: Thu, 25 Aug 2022 00:59:59 +0000 Subject: [PATCH] Fix chats cleanup FossilOrigin-Name: 82b6217d30aa4781ce23d2e2ef02942d3932b9b3e689e689eb8c975cd84799ec --- include/mastodont_chats.h | 3 ++- src/chats.c | 10 +++++++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/include/mastodont_chats.h b/include/mastodont_chats.h index 0bb3ce0..b32c64c 100644 --- a/include/mastodont_chats.h +++ b/include/mastodont_chats.h @@ -79,7 +79,8 @@ int mastodont_get_chat(mastodont_t* data, struct mstdnt_storage* storage, struct mstdnt_chat* chat); -void mstdnt_cleanup_chats(struct mstdnt_chat* chats); +void mstdnt_cleanup_chat(struct mstdnt_chat* chat); +void mstdnt_cleanup_chats(struct mstdnt_chat* chats, size_t len); void mstdnt_cleanup_messages(struct mstdnt_message* chats); #endif // MASTODONT_CHATS_H diff --git a/src/chats.c b/src/chats.c index 6f0999f..a5d2117 100644 --- a/src/chats.c +++ b/src/chats.c @@ -199,9 +199,17 @@ int mastodont_get_chat(mastodont_t* data, return mastodont_request(data, m_args, &req_args); } -void mstdnt_cleanup_chats(struct mstdnt_chat* chats) +void mstdnt_cleanup_chat(struct mstdnt_chat* chat) +{ + mstdnt_cleanup_account(&(chat->account)); +} + + +void mstdnt_cleanup_chats(struct mstdnt_chat* chats, size_t len) { if (!chats) return; + for (size_t i = 0; i < len; ++i) + mstdnt_cleanup_chat(chats + i); free(chats); }