diff --git a/interface/src/ui/overlays/OverlayPanel.cpp b/interface/src/ui/overlays/OverlayPanel.cpp index 3d7b93822e..7c52a9030e 100644 --- a/interface/src/ui/overlays/OverlayPanel.cpp +++ b/interface/src/ui/overlays/OverlayPanel.cpp @@ -170,9 +170,10 @@ void OverlayPanel::applyTransformTo(Transform& transform, bool force) { transform.setTranslation(DependencyManager::get()->getMyAvatar() ->getPosition()); } else if (!_anchorPositionBindEntity.isNull()) { - transform.setTranslation(DependencyManager::get() - ->getEntityTree()->findEntityByID(_anchorPositionBindEntity) - ->getPosition()); + EntityTreePointer entityTree = DependencyManager::get()->getEntityTree(); + entityTree->withReadLock([&] { + transform.setTranslation(entityTree->findEntityByID(_anchorPositionBindEntity)->getPosition()); + }); } else { transform.setTranslation(getAnchorPosition()); } @@ -181,9 +182,10 @@ void OverlayPanel::applyTransformTo(Transform& transform, bool force) { transform.setRotation(DependencyManager::get()->getMyAvatar() ->getOrientation()); } else if (!_anchorRotationBindEntity.isNull()) { - transform.setRotation(DependencyManager::get() - ->getEntityTree()->findEntityByID(_anchorRotationBindEntity) - ->getRotation()); + EntityTreePointer entityTree = DependencyManager::get()->getEntityTree(); + entityTree->withReadLock([&] { + transform.setRotation(entityTree->findEntityByID(_anchorRotationBindEntity)->getRotation()); + }); } else { transform.setRotation(getAnchorRotation()); }