From: divverent Date: Tue, 15 Feb 2011 06:31:53 +0000 (+0000) Subject: fix some instances detecting vector component names to ONLY match _x, _y, _z, but... X-Git-Tag: xonotic-v0.5.0~425^2~56 X-Git-Url: https://git.xonotic.org/?p=xonotic%2Fdarkplaces.git;a=commitdiff_plain;h=ebfcb03c31ffdcec0f091af0f66a66c9d30fb689 fix some instances detecting vector component names to ONLY match _x, _y, _z, but not e.g. _a; also fixes a bad memory access on one-letter global variable names git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@10845 d7cf8633-e32d-0410-b094-e92efae38249 --- diff --git a/prvm_edict.c b/prvm_edict.c index ca54439d..aa34f78b 100644 --- a/prvm_edict.c +++ b/prvm_edict.c @@ -648,7 +648,7 @@ void PRVM_ED_Print(prvm_edict_t *ed, const char *wildcard_fieldname) { d = &prog->fielddefs[i]; name = PRVM_GetString(d->s_name); - if (name[strlen(name)-2] == '_') + if(strlen(name) > 1 && name[strlen(name)-2] == '_' && (name[strlen(name)-1] == 'x' || name[strlen(name)-1] == 'y' || name[strlen(name)-1] == 'z') continue; // skip _x, _y, _z vars // Check Field Name Wildcard @@ -732,7 +732,7 @@ void PRVM_ED_Write (qfile_t *f, prvm_edict_t *ed) if(developer_entityparsing.integer) Con_Printf("PRVM_ED_Write: at entity %d field %s\n", PRVM_NUM_FOR_EDICT(ed), name); - if (name[strlen(name)-2] == '_') + if(strlen(name) > 1 && name[strlen(name)-2] == '_' && (name[strlen(name)-1] == 'x' || name[strlen(name)-1] == 'y' || name[strlen(name)-1] == 'z') continue; // skip _x, _y, _z vars v = (int *)(ed->fields.vp + d->ofs);