From fdef1fe36bbe55ad8f07800c057edc769902a2b8 Mon Sep 17 00:00:00 2001 From: havoc Date: Sun, 18 Feb 2007 12:45:26 +0000 Subject: [PATCH] changed fieldoffsets and globaloffsets to be integer array indices instead of byte offsets, this basically means d->ofs is no longer multiplied by 4 in PRVM_ED_FindFieldOffset and PRVM_ED_FindGlobalOffset git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@6852 d7cf8633-e32d-0410-b094-e92efae38249 --- progs.h | 2 +- progsvm.h | 4 ++-- prvm_edict.c | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/progs.h b/progs.h index 2cacafbe..79e62564 100644 --- a/progs.h +++ b/progs.h @@ -137,7 +137,7 @@ typedef struct edict_s } prvm_edict_t; -#define PRVM_EDICTFIELDVALUE(ed, fieldoffset) (fieldoffset ? (prvm_eval_t *)((unsigned char *)ed->v + fieldoffset) : NULL) +#define PRVM_EDICTFIELDVALUE(ed, fieldoffset) (fieldoffset ? (prvm_eval_t *)((int *)ed->v + fieldoffset) : NULL) //============================================================================ diff --git a/progsvm.h b/progsvm.h index 17f93f2d..0626ec3b 100644 --- a/progsvm.h +++ b/progsvm.h @@ -103,8 +103,8 @@ typedef struct prvm_edict_s } fields; } prvm_edict_t; -#define PRVM_EDICTFIELDVALUE(ed, fieldoffset) (fieldoffset >= 0 ? (prvm_eval_t *)((unsigned char *)ed->fields.vp + fieldoffset) : NULL) -#define PRVM_GLOBALFIELDVALUE(fieldoffset) (fieldoffset >= 0 ? (prvm_eval_t *)((unsigned char *)prog->globals.generic + fieldoffset) : NULL) +#define PRVM_EDICTFIELDVALUE(ed, fieldoffset) (fieldoffset >= 0 ? (prvm_eval_t *)((int *)ed->fields.vp + fieldoffset) : NULL) +#define PRVM_GLOBALFIELDVALUE(fieldoffset) (fieldoffset >= 0 ? (prvm_eval_t *)((int *)prog->globals.generic + fieldoffset) : NULL) //============================================================================ #define PRVM_OP_STATE 1 diff --git a/prvm_edict.c b/prvm_edict.c index 368196df..cc02e013 100644 --- a/prvm_edict.c +++ b/prvm_edict.c @@ -123,7 +123,7 @@ int PRVM_ED_FindFieldOffset(const char *field) d = PRVM_ED_FindField(field); if (!d) return -1; - return d->ofs*4; + return d->ofs; } int PRVM_ED_FindGlobalOffset(const char *global) @@ -132,7 +132,7 @@ int PRVM_ED_FindGlobalOffset(const char *global) d = PRVM_ED_FindGlobal(global); if (!d) return -1; - return d->ofs*4; + return d->ofs; } func_t PRVM_ED_FindFunctionOffset(const char *function) -- 2.39.2