diff options
author | ouwou <26526779+ouwou@users.noreply.github.com> | 2022-05-17 20:47:01 -0400 |
---|---|---|
committer | ouwou <26526779+ouwou@users.noreply.github.com> | 2022-05-17 20:47:01 -0400 |
commit | 2bed7f161b47c63370147318d0fa90b778667bc5 (patch) | |
tree | ce0b05eaac417c897d73dbd2d19b9a8b80c5b7d2 /src | |
parent | 607607ef0a50e1fb86f2b2fddf8b149b324021e2 (diff) | |
download | abaddon-portaudio-2bed7f161b47c63370147318d0fa90b778667bc5.tar.gz abaddon-portaudio-2bed7f161b47c63370147318d0fa90b778667bc5.zip |
only save state when actually disconnecting (fixes #65)
Diffstat (limited to 'src')
-rw-r--r-- | src/abaddon.cpp | 4 | ||||
-rw-r--r-- | src/discord/discord.cpp | 8 | ||||
-rw-r--r-- | src/discord/discord.hpp | 2 |
3 files changed, 10 insertions, 4 deletions
diff --git a/src/abaddon.cpp b/src/abaddon.cpp index 9b256ea..2733a04 100644 --- a/src/abaddon.cpp +++ b/src/abaddon.cpp @@ -274,8 +274,8 @@ void Abaddon::StartDiscord() { } void Abaddon::StopDiscord() { - m_discord.Stop(); - SaveState(); + if (m_discord.Stop()) + SaveState(); m_main_window->UpdateMenus(); } diff --git a/src/discord/discord.cpp b/src/discord/discord.cpp index c3961b5..317994c 100644 --- a/src/discord/discord.cpp +++ b/src/discord/discord.cpp @@ -41,7 +41,7 @@ void DiscordClient::Start() { m_websocket.StartConnection(GetGatewayURL()); } -void DiscordClient::Stop() { +bool DiscordClient::Stop() { if (m_client_started) { inflateEnd(&m_zstream); m_compressed_buf.clear(); @@ -55,9 +55,15 @@ void DiscordClient::Stop() { m_guild_to_users.clear(); m_websocket.Stop(); + + m_client_started = false; + + return true; } m_client_started = false; + + return false; } bool DiscordClient::IsStarted() const { diff --git a/src/discord/discord.hpp b/src/discord/discord.hpp index 1c09fc1..6310296 100644 --- a/src/discord/discord.hpp +++ b/src/discord/discord.hpp @@ -49,7 +49,7 @@ class DiscordClient { public: DiscordClient(bool mem_store = false); void Start(); - void Stop(); + bool Stop(); bool IsStarted() const; bool IsStoreValid() const; |