From d5454faeb76940253c78ed108e2e0647dfb04af7 Mon Sep 17 00:00:00 2001 From: Bill Currie Date: Sun, 25 Apr 2021 12:20:32 +0900 Subject: [PATCH] [gamecode] Set legacy progs def sizes from type Legacy progs do not have the extended defs data (and usually won't have anything more complicated than a vector), so use the basic type size for the def size. Fixes broken edict prints. --- libs/gamecode/pr_load.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/libs/gamecode/pr_load.c b/libs/gamecode/pr_load.c index f8365bd6f..2bca49575 100644 --- a/libs/gamecode/pr_load.c +++ b/libs/gamecode/pr_load.c @@ -324,6 +324,16 @@ PR_LoadProgsFile (progs_t *pr, QFile *file, int size) def->ofs = xdef->ofs; def->type_encoding = xdef->type; } + } else { + pr_def_t *def; + for (def = pr->pr_globaldefs, i = 0; i < pr->progs->numglobaldefs; + i++, def++) { + def->size = pr_type_size[def->type]; + } + for (def = pr->pr_fielddefs, i = 0; i < pr->progs->numfielddefs; + i++, def++) { + def->size = pr_type_size[def->type]; + } } pr->pr_trace = 0; pr->pr_trace_depth = 0;