Browse Source

sanity checks

AzaezelX 3 years ago
parent
commit
e1a127715e
1 changed files with 6 additions and 6 deletions
  1. 6 6
      Engine/source/T3D/missionMarker.cpp

+ 6 - 6
Engine/source/T3D/missionMarker.cpp

@@ -438,16 +438,16 @@ void SpawnSphere::unpackUpdate(NetConnection * con, BitStream * stream)
       stream->read(&mSpawnDataBlock);
       if (oldSDB != mSpawnDataBlock)
       {
+         delete mShapeInstance;
          ShapeBaseData *spawnedDatablock = dynamic_cast<ShapeBaseData *>(Sim::findObject(mSpawnDataBlock.c_str()));
-         if (spawnedDatablock)
+         if (spawnedDatablock && spawnedDatablock->mShape)
          {
-            delete mShapeInstance;
-            mShapeInstance = new TSShapeInstance(spawnedDatablock->mShape);
+               mShapeInstance = new TSShapeInstance(spawnedDatablock->mShape);
          }
-         else
+         else if (mDataBlock)
          {
-            delete mShapeInstance;
-            mShapeInstance = new TSShapeInstance(mDataBlock->mShape);
+            if (mDataBlock->mShape)
+               mShapeInstance = new TSShapeInstance(mDataBlock->mShape);
          }
       }
       stream->read(&mSpawnName);