blob: d52c1ee93bea8ffaf0ac921b6377dc8d206a56f5 [file] [log] [blame]
From a796c06fef6a8e43d793f8e627db3f29e6f95964 Mon Sep 17 00:00:00 2001
From: Maysam Yabandeh <myabandeh@fb.com>
Date: Thu, 12 Dec 2019 13:48:50 -0800
Subject: [PATCH] Fix build breakage from lock_guard error (#6161)
Summary:
This change fixes a source issue that caused compile time error which breaks build for many fbcode services in that setup. The size() member function of channel is a const member, so member variables accessed within it are implicitly const as well. This caused error when clang fails to resolve to a constructor that takes std::mutex because the suitable constructor got rejected due to loss of constness for its argument. The fix is to add mutable modifier to the lock_ member of channel.
Pull Request resolved: https://github.com/facebook/rocksdb/pull/6161
Differential Revision: D18967685
Pulled By: maysamyabandeh
fbshipit-source-id: 698b6a5153c3c92eeacb842c467aa28cc350d432
---
util/channel.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/util/channel.h b/util/channel.h
index 0225482c00..a8a47680a2 100644
--- a/util/channel.h
+++ b/util/channel.h
@@ -60,7 +60,7 @@ class channel {
private:
std::condition_variable cv_;
- std::mutex lock_;
+ mutable std::mutex lock_;
std::queue<T> buffer_;
bool eof_;
};