[Client] Fix crash for invalid CellRefs in MechanicsHelper::getTarget()

This commit is contained in:
David Cernat 2018-07-06 18:39:14 +03:00
parent 4b30a44816
commit 4eb72eecb1

View file

@ -112,12 +112,17 @@ mwmp::Target MechanicsHelper::getTarget(const MWWorld::Ptr& ptr)
{ {
MWWorld::CellRef *ptrRef = &ptr.getCellRef(); MWWorld::CellRef *ptrRef = &ptr.getCellRef();
if (ptrRef)
{
target.isPlayer = false; target.isPlayer = false;
target.refId = ptrRef->getRefId(); target.refId = ptrRef->getRefId();
target.refNumIndex = ptrRef->getRefNum().mIndex; target.refNumIndex = ptrRef->getRefNum().mIndex;
target.mpNum = ptrRef->getMpNum(); target.mpNum = ptrRef->getMpNum();
target.name = ptr.getClass().getName(ptr); target.name = ptr.getClass().getName(ptr);
} }
else
clearTarget(target);
}
return target; return target;
} }