From 4c19ddde69239bf1599f4fe7c06b11d496a1ce39 Mon Sep 17 00:00:00 2001
From: mpc <mpc>
Date: Sat, 3 Jul 2004 22:03:49 +0000
Subject: [PATCH] a couple locking changes

---
 apps/enclave/libsockthread/src/logger.cpp | 15 ++++++++-------
 apps/enclave/libsockthread/src/logger.hpp |  9 +++++----
 2 files changed, 13 insertions(+), 11 deletions(-)

diff --git a/apps/enclave/libsockthread/src/logger.cpp b/apps/enclave/libsockthread/src/logger.cpp
index 99460bd595..234f6eafd4 100644
--- a/apps/enclave/libsockthread/src/logger.cpp
+++ b/apps/enclave/libsockthread/src/logger.cpp
@@ -43,9 +43,9 @@ using namespace Libsockthread;
  */
 void Logger::close(void)
 {
-	logger_m.lock();
+	logf_m.lock();
 	if (logf == 0) {
-		logger_m.unlock();
+		logf_m.unlock();
 		return;
 	}
 	if (fclose(logf) == EOF) {
@@ -54,7 +54,7 @@ void Logger::close(void)
 		cerr_m.unlock();
 	}
 	logf = 0;
-	logger_m.unlock();
+	logf_m.unlock();
 }
 
 /*
@@ -90,7 +90,7 @@ void Logger::log(priority_t priority, const char* format, ...)
 	va_start(ap, format);
 	string s;
 	Time t;
-	logger_m.lock();
+	logf_m.lock();
 
 	if (logf != 0) {
 		/*
@@ -112,7 +112,7 @@ void Logger::log(priority_t priority, const char* format, ...)
 	}
 
 	va_end(ap);
-	logger_m.unlock();
+	logf_m.unlock();
 
 	return;
 }
@@ -126,12 +126,13 @@ void Logger::log(priority_t priority, const char* format, ...)
 bool Logger::open(const string& file)
 {
 	close();
-	logger_m.lock();
+	logf_m.lock();
 	logf = fopen(file.c_str(), "a");
-	logger_m.unlock();
 	if (logf != NULL) {
+		logf_m.unlock();
 		return true;
 	} else {
+		logf_m.unlock();
 		cerr_m.lock();
 		cerr << "fopen() failed (" << file << "): " << strerror(errno) << '\n';
 		cerr_m.unlock();
diff --git a/apps/enclave/libsockthread/src/logger.hpp b/apps/enclave/libsockthread/src/logger.hpp
index 47c26064be..8163970a01 100644
--- a/apps/enclave/libsockthread/src/logger.hpp
+++ b/apps/enclave/libsockthread/src/logger.hpp
@@ -79,16 +79,17 @@ namespace Libsockthread {
 			void close(void);
 			void log(priority_t priority, const char* format, ...);
 			priority_t get_loglevel(void)
-				{ logger_m.lock(); priority_t ll = loglevel; logger_m.unlock();
-					return ll; }
+				{ loglevel_m.lock(); priority_t ll = loglevel;
+					loglevel_m.unlock(); return ll; }
 			bool open(const string& file);
 			void set_loglevel(priority_t priority)
-				{ logger_m.lock(); loglevel = priority; logger_m.unlock(); }
+				{ loglevel_m.lock(); loglevel = priority; loglevel_m.unlock(); }
 		private:
 			Mutex cerr_m;
 			FILE* logf;
+			Mutex logf_m;
 			priority_t loglevel;
-			Mutex logger_m;
+			Mutex loglevel_m;
 	};
 }
 
-- 
GitLab