From 9056ca8615ea6e9e6cb0aa0af662b9bff9fa528c Mon Sep 17 00:00:00 2001 From: Nicolas Werner Date: Mon, 11 Jul 2022 16:52:05 +0200 Subject: [PATCH] Use normal instead of recursive mutex --- src/dbus/NhekoDBusBackend.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/dbus/NhekoDBusBackend.cpp b/src/dbus/NhekoDBusBackend.cpp index ea7a8940..9abc0433 100644 --- a/src/dbus/NhekoDBusBackend.cpp +++ b/src/dbus/NhekoDBusBackend.cpp @@ -26,7 +26,7 @@ struct RoomReplyState { QVector model; std::map roominfos; - std::recursive_mutex m; + std::mutex m; }; } @@ -47,7 +47,6 @@ NhekoDBusBackend::rooms(const QDBusMessage &message) } state->roominfos = cache::getRoomInfo(roomids); - std::lock_guard parentLock(state->m); for (const auto &room : roomListModel) { auto addRoom = [room, roomListModelSize = roomListModel.size(), message, state]( const QImage &image) { @@ -62,6 +61,7 @@ NhekoDBusBackend::rooms(const QDBusMessage &message) alias = QString::fromStdString(val.alt_aliases.front()); } + std::lock_guard childLock(state->m); state->model.push_back(nheko::dbus::RoomInfoItem{ room->roomId(), alias, @@ -69,7 +69,6 @@ NhekoDBusBackend::rooms(const QDBusMessage &message) image, room->notificationCount()}); - std::lock_guard childLock(state->m); if (state->model.size() == roomListModelSize) { nhlog::ui()->debug("Sending {} rooms over D-Bus...", state->model.size()); auto reply = message.createReply();