diff --git a/src/Lib/Audio.cc b/src/Lib/Audio.cc
index 290af8355b77c1e6fded3919c41e86b5a400ec9e..6f02dbee66e24467cfe523857c9b91badbde9e99 100644
--- a/src/Lib/Audio.cc
+++ b/src/Lib/Audio.cc
@@ -128,7 +128,7 @@ AudioStream::decodeData()
                 const size_t frame_count = static_cast<size_t>(frame_count_int);
                 dataPtr                  = reinterpret_cast<double *>(
                     realloc(dataPtr, (dataSize + static_cast<size_t>(dataFrame->nb_samples)) *
-                                         sizeof(double)));
+                                                          sizeof(double)));
                 memcpy(dataPtr + dataSize, buffer, frame_count * sizeof(double));
                 dataSize += frame_count;
             }
diff --git a/src/UI/DocumentViews/MpvContainer.cc b/src/UI/DocumentViews/MpvContainer.cc
index b63509539601ca142c9a56d4bf4df261d2be0d10..ec7c8d477ff85ca4f3981af5b13462a3b6c26163 100644
--- a/src/UI/DocumentViews/MpvContainer.cc
+++ b/src/UI/DocumentViews/MpvContainer.cc
@@ -107,6 +107,14 @@ MpvContainer::~MpvContainer() noexcept
         logWarning() << "The main window was already destroyed, "
                         "don't destroy MPV and let it leak, "
                         "the OS will collect the garbage.";
+        if (mpv) {
+            asyncCommand(AsyncCmdType::None, { "quit", nullptr });
+            registerMpvTimeCallback(nullptr);
+            registerMpvDurationCallback(nullptr);
+            asyncCommand(AsyncCmdType::None, { "quit", nullptr });
+            mpv                     = nullptr; // Stop all other callbacks here
+            isMpvAlreadyInitialized = false;   // De-init
+        }
     }
 }