From 85de10ffb5ef117ee847a66bb7885f404f9deb4e Mon Sep 17 00:00:00 2001 From: Benau Date: Tue, 4 Apr 2017 23:53:44 +0800 Subject: [PATCH] Fix memory leak --- src/recorder/jpg_writer.cpp | 7 ++----- src/recorder/recorder_common.cpp | 3 ++- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/src/recorder/jpg_writer.cpp b/src/recorder/jpg_writer.cpp index 7e91af25c..6b6c47213 100644 --- a/src/recorder/jpg_writer.cpp +++ b/src/recorder/jpg_writer.cpp @@ -40,12 +40,9 @@ namespace Recorder } ThreadData* td = (ThreadData*)obj; Synchronised > >* - jpg_data = (Synchronised > >*)td->m_data; + jpg_data = (Synchronised > >*)td->m_data; pthread_cond_t* cond_request = td->m_request; - - const unsigned width = irr_driver->getActualScreenSize().Width; - const unsigned height = irr_driver->getActualScreenSize().Height; int64_t frames_encoded = 0; while (true) { diff --git a/src/recorder/recorder_common.cpp b/src/recorder/recorder_common.cpp index 7fbc93e0b..8ea1242ef 100644 --- a/src/recorder/recorder_common.cpp +++ b/src/recorder/recorder_common.cpp @@ -107,7 +107,8 @@ namespace Recorder g_jpg_list.getData().emplace_back((uint8_t*)NULL, 0, 0); pthread_cond_signal(&g_jpg_request); g_jpg_list.unlock(); - pthread_join(*g_video_thread.getAtomic(), NULL); + pthread_join(*g_video_thread.getData(), NULL); + delete g_video_thread.getData(); g_video_thread.setAtomic(NULL); Recorder::writeMKV(g_recording_name + ".video", g_recording_name + ".audio");