From 45d19167c946219f6eb830e3c73f62f3bf3ceff9 Mon Sep 17 00:00:00 2001 From: Seth Alves Date: Wed, 16 Dec 2015 10:09:46 -0800 Subject: [PATCH] fix a couple of missing-parent bugs --- assignment-client/src/entities/AssignmentParentFinder.cpp | 5 ++--- libraries/entities/src/EntityItem.cpp | 2 ++ libraries/entities/src/EntityTree.cpp | 4 ++-- 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/assignment-client/src/entities/AssignmentParentFinder.cpp b/assignment-client/src/entities/AssignmentParentFinder.cpp index fbcaba84ae..d8bc51a0f0 100644 --- a/assignment-client/src/entities/AssignmentParentFinder.cpp +++ b/assignment-client/src/entities/AssignmentParentFinder.cpp @@ -15,10 +15,9 @@ SpatiallyNestableWeakPointer AssignmentParentFinder::find(QUuid parentID, bool& SpatiallyNestableWeakPointer parent; // search entities parent = _tree->findEntityByEntityItemID(parentID); - if (parent.lock()) { - success = true; - } else { + if (parent.expired()) { success = false; } + success = true; return parent; } diff --git a/libraries/entities/src/EntityItem.cpp b/libraries/entities/src/EntityItem.cpp index d626349296..bc91b46f5b 100644 --- a/libraries/entities/src/EntityItem.cpp +++ b/libraries/entities/src/EntityItem.cpp @@ -1254,6 +1254,8 @@ const AABox& EntityItem::getAABox(bool& success) const { _cachedAABox = AABox(rotatedExtentsRelativeToRegistrationPoint); _recalcAABox = false; } + } else { + success = true; } return _cachedAABox; } diff --git a/libraries/entities/src/EntityTree.cpp b/libraries/entities/src/EntityTree.cpp index 5ae578750c..cb787607a8 100644 --- a/libraries/entities/src/EntityTree.cpp +++ b/libraries/entities/src/EntityTree.cpp @@ -240,8 +240,8 @@ bool EntityTree::updateEntityWithElement(EntityItemPointer entity, const EntityI bool success; AACube queryCube = childEntity->getQueryAACube(success); if (!success) { - qCDebug(entities) << "Can't update child -- failed to get query-cube for" << childEntity->getID(); - // XXX put on a list for later checking? + _missingParent.append(childEntity); + continue; } UpdateEntityOperator theChildOperator(getThisPointer(), containingElement, childEntity, queryCube);