From 0576dec1e2d40f661b4c0024b11f7d6b2d690a80 Mon Sep 17 00:00:00 2001 From: Bill Currie Date: Mon, 16 Jul 2001 07:13:10 +0000 Subject: [PATCH] split up PR_LoadProgs a bit --- libs/gamecode/pr_edict.c | 31 ++++++++++++++++++++++--------- 1 file changed, 22 insertions(+), 9 deletions(-) diff --git a/libs/gamecode/pr_edict.c b/libs/gamecode/pr_edict.c index 7f1c7d5d8..1b204802f 100644 --- a/libs/gamecode/pr_edict.c +++ b/libs/gamecode/pr_edict.c @@ -1005,18 +1005,10 @@ var_get_key (void *d, void *_pr) return PR_GetString (pr, def->s_name); } -/* - PR_LoadProgs -*/ void -PR_LoadProgs (progs_t * pr, const char *progsname) +_PR_LoadProgs (progs_t * pr, const char *progsname) { int i; - dstatement_t *st; - -// flush the non-C variable lookup cache - for (i = 0; i < GEFV_CACHESIZE; i++) - gefvCache[i].field[0] = 0; if (progsname) pr->progs = (dprograms_t *) COM_LoadHunkFile (progsname); @@ -1116,6 +1108,27 @@ PR_LoadProgs (progs_t * pr, const char *progsname) for (i = 0; i < pr->progs->numglobals; i++) ((int *) pr->pr_globals)[i] = LittleLong (((int *) pr->pr_globals)[i]); +} + +/* + PR_LoadProgs +*/ +void +PR_LoadProgs (progs_t * pr, const char *progsname) +{ + int i; + dstatement_t *st; + + _PR_LoadProgs (pr, progsname); + if (!pr->progs) + return; + + if (!progsname) + progsname = "(preloaded)"; + +// flush the non-C variable lookup cache + for (i = 0; i < GEFV_CACHESIZE; i++) + gefvCache[i].field[0] = 0; if (!(pr->globals.time = (float*)PR_GetGlobalPointer (pr, "time"))) PR_Error (pr, "%s: undefined symbol: time", progsname);