From 78a474eb1efd91cc6d810c1795ab15b28895a88a Mon Sep 17 00:00:00 2001 From: divverent Date: Tue, 8 Jul 2008 16:15:27 +0000 Subject: [PATCH] make the weird != error message nonfatal and developer-only if it just hints to superfluous data in the model; only abort if it hints to an overrun. Haven't checked the actual equation though. Please report if the problem is fixed. git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@8390 d7cf8633-e32d-0410-b094-e92efae38249 --- model_alias.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/model_alias.c b/model_alias.c index b756f91d..1755bbbb 100644 --- a/model_alias.c +++ b/model_alias.c @@ -55,8 +55,10 @@ void Mod_Skeletal_AnimateVertices(const dp_model_t *model, const frameblend_t *f size_t size; size = model->num_surfaces * sizeof(msurface_t) + model->num_surfaces * sizeof(int) + model->num_surfaces * model->numskins * sizeof(texture_t) + model->surfmesh.num_triangles * sizeof(int[3]) + model->surfmesh.num_triangles * sizeof(int[3]) + model->surfmesh.num_vertices * sizeof(float[3]) + model->surfmesh.num_vertices * sizeof(float[3]) + model->surfmesh.num_vertices * sizeof(float[3]) + model->surfmesh.num_vertices * sizeof(float[3]) + model->surfmesh.num_vertices * sizeof(float[2]) + model->surfmesh.num_vertices * sizeof(int[4]) + model->surfmesh.num_vertices * sizeof(float[4]) + model->num_poses * sizeof(float[12]) + model->num_bones * sizeof(float[12]) + model->numskins * sizeof(animscene_t) + model->num_bones * sizeof(aliasbone_t) + model->numframes * sizeof(animscene_t) + ((model->surfmesh.num_vertices <= 65536) ? (model->surfmesh.num_triangles * sizeof(unsigned short[3])) : 0); - if (size != ((memheader_t *)model->data_surfaces)[-1].size) + if (size > ((memheader_t *)model->data_surfaces)[-1].size) Sys_Error("%s:%i: %i != %i", __FILE__, __LINE__, (int)size, (int)((memheader_t *)model->data_surfaces)[-1].size); + else if(size < ((memheader_t *)model->data_surfaces)[-1].size) + Con_DPrintf("%s:%i for %s: %i < %i", __FILE__, __LINE__, model->name, (int)size, (int)((memheader_t *)model->data_surfaces)[-1].size); // interpolate matrices and concatenate them to their parents for (i = 0;i < model->num_bones;i++) -- 2.39.2