From 993766a941ef36ccdf74c4a9c6ca0210df2a33dc Mon Sep 17 00:00:00 2001
From: philippegorley <philippe.gorley@savoirfairelinux.com>
Date: Wed, 15 Aug 2018 14:23:48 -0400
Subject: [PATCH] recorder: use deque

std::queue<T> uses std::deque<T> as a container, so use it directly
since the interface offers better tools for debugging and manipulation.

Change-Id: I2785fc13bab6cda4704488408cad1459ae1b2395
Reviewed-by: Sebastien Blin <sebastien.blin@savoirfairelinux.com>
---
 src/media/media_recorder.cpp | 6 +++---
 src/media/media_recorder.h   | 2 +-
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/media/media_recorder.cpp b/src/media/media_recorder.cpp
index f2d63abc11..0362cd3cf8 100644
--- a/src/media/media_recorder.cpp
+++ b/src/media/media_recorder.cpp
@@ -161,7 +161,7 @@ MediaRecorder::startRecording()
         while (!frames_.empty()) {
             auto f = frames_.front();
             av_frame_unref(f.frame);
-            frames_.pop();
+            frames_.pop_front();
         }
     }
 
@@ -228,7 +228,7 @@ MediaRecorder::recordData(AVFrame* frame, bool isVideo, bool fromPeer)
 
     {
         std::lock_guard<std::mutex> q(qLock_);
-        frames_.emplace(input, isVideo, fromPeer);
+        frames_.emplace_back(input, isVideo, fromPeer);
     }
     loop_.interrupt();
     return 0;
@@ -510,7 +510,7 @@ MediaRecorder::process()
         std::lock_guard<std::mutex> q(qLock_);
         if (!frames_.empty()) {
             recframe = frames_.front();
-            frames_.pop();
+            frames_.pop_front();
         } else {
             return;
         }
diff --git a/src/media/media_recorder.h b/src/media/media_recorder.h
index 87bf1e1087..1c88f28764 100644
--- a/src/media/media_recorder.h
+++ b/src/media/media_recorder.h
@@ -129,7 +129,7 @@ class MediaRecorder {
         InterruptedThreadLoop loop_;
         void process();
         std::mutex qLock_;
-        std::queue<RecordFrame> frames_;
+        std::deque<RecordFrame> frames_;
 };
 
 }; // namespace ring
-- 
GitLab