more fix for a non-finite number assertion in llvolume

master
Xiaohong Bao 2014-02-05 16:16:30 -07:00
parent cd9871197c
commit a847caade4
2 changed files with 8 additions and 4 deletions

View File

@ -722,13 +722,17 @@ void LLVolumeImplFlexible::preRebuild()
if (!mUpdated)
{
LL_RECORD_BLOCK_TIME(FTM_FLEXI_PREBUILD);
doFlexibleRebuild();
doFlexibleRebuild(false);
}
}
void LLVolumeImplFlexible::doFlexibleRebuild()
void LLVolumeImplFlexible::doFlexibleRebuild(bool rebuild_volume)
{
LLVolume* volume = mVO->getVolume();
if(rebuild_volume)
{
volume->setDirty();
}
volume->regen();
mUpdated = TRUE;
@ -801,7 +805,7 @@ BOOL LLVolumeImplFlexible::doUpdateGeometry(LLDrawable *drawable)
volume->dirtySpatialGroup();
{
LL_RECORD_BLOCK_TIME(FTM_FLEXIBLE_REBUILD);
doFlexibleRebuild();
doFlexibleRebuild(volume->mVolumeChanged);
}
volume->genBBoxes(isVolumeGlobal());
}

View File

@ -100,7 +100,7 @@ private:
const LLMatrix4& getWorldMatrix(LLXformMatrix* xform) const;
void updateRelativeXform(bool force_identity);
void doFlexibleUpdate(); // Called to update the simulation
void doFlexibleRebuild(); // Called to rebuild the geometry
void doFlexibleRebuild(bool rebuild_volume); // Called to rebuild the geometry
void preRebuild();
//void setAttributes( LLFlexibleObjectData );