diff --git a/libraries/avatars/src/AvatarData.cpp b/libraries/avatars/src/AvatarData.cpp index ea331137a7..9308ccba84 100755 --- a/libraries/avatars/src/AvatarData.cpp +++ b/libraries/avatars/src/AvatarData.cpp @@ -3047,11 +3047,13 @@ void AvatarData::clearAvatarEntity(const QUuid& entityID, bool requiresRemovalFr } void AvatarData::clearAvatarEntities() { - _avatarEntitiesLock.withReadLock([this] { - foreach(auto entityID, _packedAvatarEntityData.keys()) { - clearAvatarEntity(entityID); - } + QList avatarEntityIDs; + _avatarEntitiesLock.withReadLock([&] { + avatarEntityIDs = _packedAvatarEntityData.keys(); }); + for (const auto& entityID : avatarEntityIDs) { + clearAvatarEntity(entityID); + } } AvatarEntityMap AvatarData::getAvatarEntityData() const {