Query shape type outside lock

This commit is contained in:
Clement 2019-04-30 17:57:37 -07:00
parent 4821e745cc
commit 281f92e3ea

View file

@ -2023,9 +2023,10 @@ void EntityItem::setCollisionMask(uint16_t value) {
void EntityItem::setDynamic(bool value) { void EntityItem::setDynamic(bool value) {
if (getDynamic() != value) { if (getDynamic() != value) {
auto shapeType = getShapeType();
withWriteLock([&] { withWriteLock([&] {
// dynamic and STATIC_MESH are incompatible so we check for that case // dynamic and STATIC_MESH are incompatible so we check for that case
if (value && getShapeType() == SHAPE_TYPE_STATIC_MESH) { if (value && shapeType == SHAPE_TYPE_STATIC_MESH) {
if (_dynamic) { if (_dynamic) {
_dynamic = false; _dynamic = false;
_flags |= Simulation::DIRTY_MOTION_TYPE; _flags |= Simulation::DIRTY_MOTION_TYPE;