Sending a message should not modify the state of DebugReportCallbackList,
conceptually.
Bug:
28120066
Change-Id: I7b30b4a41492b4e670408f34a6bffe8b56295afd
size_t location,
int32_t message_code,
const char* layer_prefix,
- const char* message) {
+ const char* message) const {
std::shared_lock<decltype(rwmutex_)> lock(rwmutex_);
- Node* node = &head_;
+ const Node* node = &head_;
while ((node = node->next)) {
if ((node->flags & flags) != 0) {
node->callback(flags, object_type, object, location, message_code,
size_t location,
int32_t message_code,
const char* layer_prefix,
- const char* message);
+ const char* message) const;
static Node* FromHandle(VkDebugReportCallbackEXT handle) {
return reinterpret_cast<Node*>(uintptr_t(handle));
};
// TODO(jessehall): replace with std::shared_mutex when available in libc++
- std::shared_timed_mutex rwmutex_;
+ mutable std::shared_timed_mutex rwmutex_;
Node head_;
};