mirror of
https://git.code.sf.net/p/quake/quakeforge
synced 2024-11-10 15:22:04 +00:00
re-arrange the order of the `sections' of a .dat file to match the header
order. this also `happens' to put the strings section just before the globals section (both at the end) which will make pointer bounds checking easier.
This commit is contained in:
parent
8a333c8047
commit
3b2d2a1c88
1 changed files with 16 additions and 18 deletions
|
@ -330,10 +330,6 @@ WriteData (int crc)
|
|||
h = SafeOpenWrite (destfile);
|
||||
SafeWrite (h, &progs, sizeof (progs));
|
||||
|
||||
progs.ofs_strings = ftell (h);
|
||||
progs.numstrings = strofs;
|
||||
SafeWrite (h, strings, strofs);
|
||||
|
||||
progs.ofs_statements = ftell (h);
|
||||
progs.numstatements = numstatements;
|
||||
for (i = 0; i < numstatements; i++) {
|
||||
|
@ -344,18 +340,6 @@ WriteData (int crc)
|
|||
}
|
||||
SafeWrite (h, statements, numstatements * sizeof (dstatement_t));
|
||||
|
||||
progs.ofs_functions = ftell (h);
|
||||
progs.numfunctions = numfunctions;
|
||||
for (i = 0; i < numfunctions; i++) {
|
||||
functions[i].first_statement = LittleLong (functions[i].first_statement);
|
||||
functions[i].parm_start = LittleLong (functions[i].parm_start);
|
||||
functions[i].s_name = LittleLong (functions[i].s_name);
|
||||
functions[i].s_file = LittleLong (functions[i].s_file);
|
||||
functions[i].numparms = LittleLong (functions[i].numparms);
|
||||
functions[i].locals = LittleLong (functions[i].locals);
|
||||
}
|
||||
SafeWrite (h, functions, numfunctions * sizeof (dfunction_t));
|
||||
|
||||
progs.ofs_globaldefs = ftell (h);
|
||||
progs.numglobaldefs = numglobaldefs;
|
||||
for (i = 0; i < numglobaldefs; i++) {
|
||||
|
@ -374,12 +358,26 @@ WriteData (int crc)
|
|||
}
|
||||
SafeWrite (h, fields, numfielddefs * sizeof (ddef_t));
|
||||
|
||||
progs.ofs_functions = ftell (h);
|
||||
progs.numfunctions = numfunctions;
|
||||
for (i = 0; i < numfunctions; i++) {
|
||||
functions[i].first_statement = LittleLong (functions[i].first_statement);
|
||||
functions[i].parm_start = LittleLong (functions[i].parm_start);
|
||||
functions[i].s_name = LittleLong (functions[i].s_name);
|
||||
functions[i].s_file = LittleLong (functions[i].s_file);
|
||||
functions[i].numparms = LittleLong (functions[i].numparms);
|
||||
functions[i].locals = LittleLong (functions[i].locals);
|
||||
}
|
||||
SafeWrite (h, functions, numfunctions * sizeof (dfunction_t));
|
||||
|
||||
progs.ofs_strings = ftell (h);
|
||||
progs.numstrings = strofs;
|
||||
SafeWrite (h, strings, strofs);
|
||||
|
||||
progs.ofs_globals = ftell (h);
|
||||
progs.numglobals = numpr_globals;
|
||||
|
||||
for (i = 0; i < numpr_globals; i++)
|
||||
((int *) pr_globals)[i] = LittleLong (((int *) pr_globals)[i]);
|
||||
|
||||
SafeWrite (h, pr_globals, numpr_globals * 4);
|
||||
|
||||
if (options.verbosity >= -1)
|
||||
|
|
Loading…
Reference in a new issue