From 14acfad7c4c73f8931fea35fe19e4170c1b9d00e Mon Sep 17 00:00:00 2001 From: Bill Currie Date: Sat, 15 Feb 2020 22:53:21 +0900 Subject: [PATCH] Fix incorrect placement of far data All the care in aligning things was undone by not updating the calculations of the pointers. --- tools/qfcc/source/obj_file.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tools/qfcc/source/obj_file.c b/tools/qfcc/source/obj_file.c index e0b6c668f..c809a4a8b 100644 --- a/tools/qfcc/source/obj_file.c +++ b/tools/qfcc/source/obj_file.c @@ -889,8 +889,8 @@ qfo_to_progs (qfo_t *qfo, int *size) progs->ofs_globals = data - (byte *) progs; globals = (pr_type_t*) data; - locals = globals + qfo->spaces[qfo_near_data_space].data_size; - far_data = locals + locals_size; + locals = globals + locals_start; + far_data = globals + near_data_size; type_data = far_data + qfo->spaces[qfo_far_data_space].data_size; memcpy (strings, qfo->spaces[qfo_strings_space].d.strings, @@ -947,7 +947,7 @@ qfo_to_progs (qfo_t *qfo, int *size) memcpy (globals, qfo->spaces[qfo_near_data_space].d.data, qfo->spaces[qfo_near_data_space].data_size * sizeof (pr_type_t)); qfo->spaces[qfo_near_data_space].d.data = globals; - // lcear locals data + // clear locals data memset (locals, 0, locals_size * sizeof (pr_type_t)); // copy far data memcpy (far_data, qfo->spaces[qfo_far_data_space].d.data,