1From bfce136fa9ff1e955928539484ba4dd55f98f05b Mon Sep 17 00:00:00 2001
2From: Willem Jan Withagen <wjw@digiware.nl>
3Date: Sun, 16 Aug 2020 23:38:55 +0200
4Subject: [PATCH] Update channel.h
5
6Compiling this on FreeBSD with CLang fails due to:
7```In file included from /usr/ports/net/ceph15/work/ceph-15.2.4/src/rocksdb/utilities/backupable/backupable_db.cc:16:
8/usr/ports/net/ceph15/work/ceph-15.2.4/src/rocksdb/util/channel.h:35:33: error: no matching constructor for initialization of 'std::lock_guard<std::mutex>'
9    std::lock_guard<std::mutex> lk(lock_);
10                                ^  ~~~~~
11/usr/include/c++/v1/__mutex_base:90:14: note: candidate constructor not viable: 1st argument ('const std::mutex') would lose const qualifier
12    explicit lock_guard(mutex_type& __m) _LIBCPP_THREAD_SAFETY_ANNOTATION(acquire_capability(__m))
13             ^
14/usr/include/c++/v1/__mutex_base:100:5: note: candidate constructor not viable: no known conversion from 'const std::mutex' to 'const std::__1::lock_guard<std::__1::mutex>' for 1st argument
15    lock_guard(lock_guard const&) _LIBCPP_EQUAL_DELETE;
16    ^
17/usr/include/c++/v1/__mutex_base:94:5: note: candidate constructor not viable: requires 2 arguments, but 1 was provided
18    lock_guard(mutex_type& __m, adopt_lock_t) _LIBCPP_THREAD_SAFETY_ANNOTATION(requires_capability(__m))
19    ^
201 error generated.
21```
22---
23 thirdparty/rocksdb/util/channel.h | 2 +-
24 1 file changed, 1 insertion(+), 1 deletion(-)
25
26diff --git a/thirdparty/rocksdb/util/channel.h b/thirdparty/rocksdb/util/channel.h
27index 705fa2d28f..993bef5bc0 100644
28--- a/thirdparty/rocksdb/util/channel.h
29+++ b/thirdparty/rocksdb/util/channel.h
30@@ -31,7 +31,7 @@ class channel {
31     return buffer_.empty() && eof_;
32   }
33
34-  size_t size() const {
35+  size_t size() {
36     std::lock_guard<std::mutex> lk(lock_);
37     return buffer_.size();
38   }
39