From 27b865475773c42902a443810feace8bcb31391c Mon Sep 17 00:00:00 2001
From: Nicolas Pope <nwpope@utu.fi>
Date: Wed, 29 Jan 2020 15:49:28 +0200
Subject: [PATCH] Fix locks for mutex debug mode

---
 components/codecs/src/reader.cpp      | 5 ++++-
 components/streams/src/filestream.cpp | 5 ++++-
 2 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/components/codecs/src/reader.cpp b/components/codecs/src/reader.cpp
index 00df80e3c..2a2fc4145 100644
--- a/components/codecs/src/reader.cpp
+++ b/components/codecs/src/reader.cpp
@@ -54,9 +54,12 @@ bool Reader::begin() {
 }*/
 
 bool Reader::read(int64_t ts, const std::function<void(const ftl::codecs::StreamPacket &, ftl::codecs::Packet &)> &f) {
-	//UNIQUE_LOCK(mtx_, lk);
+	#ifdef DEBUG_MUTEX
+	UNIQUE_LOCK(mtx_, lk);
+	#else
 	std::unique_lock<std::mutex> lk(mtx_, std::defer_lock);
 	if (!lk.try_lock()) return true;
+	#endif
 
 	// Check buffer first for frames already read
 	for (auto i = data_.begin(); i != data_.end();) {
diff --git a/components/streams/src/filestream.cpp b/components/streams/src/filestream.cpp
index 62256438b..a9003dd04 100644
--- a/components/streams/src/filestream.cpp
+++ b/components/streams/src/filestream.cpp
@@ -65,9 +65,12 @@ bool File::tick(int64_t ts) {
 		return false;
 	}
 
-	//UNIQUE_LOCK(mtx_, lk);
+	#ifdef DEBUG_MUTEX
+	UNIQUE_LOCK(mutex_, lk);
+	#else
 	std::unique_lock<std::mutex> lk(mutex_, std::defer_lock);
 	if (!lk.try_lock()) return true;
+	#endif
 
 	if (jobs_ > 0) {
 		//LOG(ERROR) << "STILL HAS JOBS";
-- 
GitLab