hlmdl: fix framestate related crashes when tracing wrongly against hlmdl.

hlmdl: fix that looping animations wrongly get their last frame removed, presumably which will fix most crashes


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5386 fc73d0e0-1445-4013-8a0c-d673dee63da5
This commit is contained in:
Eukara 2019-01-17 09:27:09 +00:00
parent 0428f7851f
commit cb88355800
1 changed files with 3 additions and 3 deletions

View File

@ -595,14 +595,14 @@ void HL_SetupBones(hlmodel_t *model, int seqnum, int firstbone, int lastbone, fl
if(frame1 >= sequence->numframes)
{
if (sequence->loop)
frame1 %= sequence->numframes-1;
frame1 %= sequence->numframes;
else
frame1 = sequence->numframes-1;
}
if(frame2 >= sequence->numframes)
{
if (sequence->loop)
frame2 %= sequence->numframes-1;
frame2 %= sequence->numframes;
else
frame2 = sequence->numframes-1;
}
@ -962,7 +962,7 @@ qboolean HLMDL_Trace (model_t *model, int hulloverride, framestate_t *framestat
memset (trace, 0, sizeof(trace_t));
trace->fraction = trace->truefraction = 1;
if (!(against & FTECONTENTS_BODY))
if (!(against & FTECONTENTS_BODY) || !framestate)
return false;
if (framestate->bonestate && framestate->skeltype == SKEL_ABSOLUTE)