diff --git a/MusicBot/src/MusicPlayer.cpp b/MusicBot/src/MusicPlayer.cpp index 7122236..1af89c9 100644 --- a/MusicBot/src/MusicPlayer.cpp +++ b/MusicBot/src/MusicPlayer.cpp @@ -30,9 +30,12 @@ void AbstractMusicPlayer::unregisterEventHandler(const std::string& string) { } void AbstractMusicPlayer::fireEvent(MusicEvent event) { - std::lock_guard lock(this->eventLock); - auto listCopy = this->eventHandlers; //Copy for remove while fire - for(const auto& entry : listCopy) + decltype(this->eventHandlers) handlers{}; + { + std::lock_guard lock(this->eventLock); + handlers = this->eventHandlers; //Copy for remove while fire + } + for(const auto& entry : handlers) entry.second(event); } diff --git a/git-teaspeak b/git-teaspeak index 71efb00..5f28af1 160000 --- a/git-teaspeak +++ b/git-teaspeak @@ -1 +1 @@ -Subproject commit 71efb006ebdce2740e652306df36e34465a21dfc +Subproject commit 5f28af18dabd2ee8f3370bf564c1e287acad3af2 diff --git a/music b/music index ed56872..e40ea16 160000 --- a/music +++ b/music @@ -1 +1 @@ -Subproject commit ed56872346f5e90320e62bf1b5e02466fb866b2e +Subproject commit e40ea16703252b64e1e8b744e7bd5cbc88e2941e