diff options
| author | Nyx (Neal Orman) <nyx@lindenlab.com> | 2010-09-30 15:44:22 -0400 | 
|---|---|---|
| committer | Nyx (Neal Orman) <nyx@lindenlab.com> | 2010-09-30 15:44:22 -0400 | 
| commit | 54f509eed3ea34c62f20607e06fd9d7201df66c6 (patch) | |
| tree | 32fb36628771fdda8f7bab107b24a638dfd0dab5 /indra | |
| parent | af5d873719e6eeb653a03b9d3c3d6a8f746c7e31 (diff) | |
SH-84 CTS-217 FIX crash when trying to upload an animation
we were calling markVisible when we shouldn't have, resulting in a segfault
from dereferencing a null pointer. Removed the offending line and the
animation upload works now.
Reviewed by davep
Diffstat (limited to 'indra')
| -rw-r--r-- | indra/newview/llfloateranimpreview.cpp | 1 | ||||
| -rw-r--r-- | indra/newview/pipeline.cpp | 32 | 
2 files changed, 16 insertions, 17 deletions
diff --git a/indra/newview/llfloateranimpreview.cpp b/indra/newview/llfloateranimpreview.cpp index 61be8ce77d..1f334815d6 100644 --- a/indra/newview/llfloateranimpreview.cpp +++ b/indra/newview/llfloateranimpreview.cpp @@ -1033,7 +1033,6 @@ LLPreviewAnimation::LLPreviewAnimation(S32 width, S32 height) : LLViewerDynamicT  	mDummyAvatar->updateGeometry(mDummyAvatar->mDrawable);  	mDummyAvatar->startMotion(ANIM_AGENT_STAND, BASE_ANIM_TIME_OFFSET);  	mDummyAvatar->hideSkirt(); -	gPipeline.markVisible(mDummyAvatar->mDrawable, *LLViewerCamera::getInstance());  	// stop extraneous animations  	mDummyAvatar->stopMotion( ANIM_AGENT_HEAD_ROT, TRUE ); diff --git a/indra/newview/pipeline.cpp b/indra/newview/pipeline.cpp index 64922ee991..f11cfc738d 100644 --- a/indra/newview/pipeline.cpp +++ b/indra/newview/pipeline.cpp @@ -2207,8 +2207,8 @@ void LLPipeline::markVisible(LLDrawable *drawablep, LLCamera& camera)  	if(drawablep && !drawablep->isDead())  	{ -	if (drawablep->isSpatialBridge()) -	{ +		if (drawablep->isSpatialBridge()) +		{  			const LLDrawable* root = ((LLSpatialBridge*) drawablep)->mDrawable;  			llassert(root); // trying to catch a bad assumption  			if (root && //  // this test may not be needed, see above @@ -2220,24 +2220,24 @@ void LLPipeline::markVisible(LLDrawable *drawablep, LLCamera& camera)  					LLViewerObject *vobj = rootparent->getVObj();  					llassert(vobj); // trying to catch a bad assumption  					if (vobj) // this test may not be needed, see above -		{ +					{  						const LLVOAvatar* av = vobj->asAvatar(); -			if (av && av->isImpostor()) -			{ -				return; -			} -		} +						if (av && av->isImpostor()) +						{ +							return; +						} +					}  				}  			} -		sCull->pushBridge((LLSpatialBridge*) drawablep); -	} -	else -	{ -		sCull->pushDrawable(drawablep); -	} +			sCull->pushBridge((LLSpatialBridge*) drawablep); +		} +		else +		{ +			sCull->pushDrawable(drawablep); +		} -	drawablep->setVisible(camera); -} +		drawablep->setVisible(camera); +	}  }  void LLPipeline::markMoved(LLDrawable *drawablep, BOOL damped_motion)  | 
