Bill Currie
dedb2fa6bf
get [super ...] working correctly
2003-05-15 05:58:31 +00:00
Bill Currie
5f3573143a
the beginnings of a jihad against buffer overflows
2003-05-08 23:24:02 +00:00
Bill Currie
f7d806e8d5
can now handle > vector sized parameters
2003-04-22 20:11:16 +00:00
Bill Currie
e732cf591d
remove all references to OFS_* from the C code. only the macros in progs.h
...
use them now
2003-04-22 18:20:15 +00:00
Bill Currie
eb099ae0d3
make qf gcc 3.3 clean
2003-04-17 00:01:48 +00:00
Bill Currie
8fc721a2bb
plug another overflow
2003-04-08 04:01:20 +00:00
Bill Currie
58541b6855
support printing a couple more types (especially for edicts)
2003-03-26 18:45:44 +00:00
Bill Currie
fafc578440
correct a comment and ws
2003-03-25 17:40:02 +00:00
Bill Currie
548d3b68f8
pr_load.c:
...
PR_RelocateBuiltins must be called before PR_InitRuntime
pr_obj.c:
don't segfault on broken classes
2003-03-13 18:45:45 +00:00
Bill Currie
2858bc4922
d'oh
2003-03-12 22:38:02 +00:00
Bill Currie
71a60717d9
make pr_source_path a ; separated list of dirs and make it controllable in
...
qfprogs
2003-03-12 22:31:44 +00:00
Bill Currie
bfaef7747b
the first fielddef isn't always null (esp with qfcc), so check to see if it
...
needs printing too
2003-03-05 18:18:42 +00:00
Bill Currie
93834f2694
better source line tracking
2003-02-24 16:01:52 +00:00
Bill Currie
38d5c8c41a
better line search algorithm (not perfect yet, though)
2003-02-24 03:34:11 +00:00
Bill Currie
5c3892cbb2
make sure the string is valid before attempting to print it
2003-02-24 03:07:26 +00:00
Bill Currie
72e5221f06
minor debugging tweaks
2003-02-21 15:09:02 +00:00
Bill Currie
b6a3bc8d1c
try to give line numbers in the traceback
2003-02-19 06:26:49 +00:00
Bill Currie
6a687f5e45
rename all the globals in quakefs.[ch] to be QFS_* or qfs_*
2003-02-14 19:46:07 +00:00
Bill Currie
8a9cd78072
fix up a couple of error cases (and catch them!)
2003-01-29 20:32:44 +00:00
Bill Currie
761a7546dd
re-arrange things so __attribute__ and __builtin_expect are properly
...
autoconfiscated so rcsid will continue to work with gcc 3.3
2003-01-15 15:31:36 +00:00
Bill Currie
71196fedf6
make gcc more anal about prototypes, string constants and function
...
visibility (ie, global functions must have a prototype)
2003-01-06 18:28:13 +00:00
Bill Currie
d78f34e795
fix some spelling errors
2002-11-20 21:21:22 +00:00
Bill Currie
06df342655
fix a stray ;
2002-11-15 14:56:57 +00:00
Bill Currie
d1199f23da
get categories working in the runtime :)
2002-11-14 20:42:48 +00:00
Bill Currie
836c469737
sys.[ch]:
...
handle SIGFPE and allow the registered signal handler to do recovery
rather than bail
progs.h, pr_exec.c, pr_load.c:
if pr_faultchecks is 1 (0 is default), handle division by 0 gracefully
by loading the maximum representable number into the answer
Closes : #58
the rest:
kill the SIGFPE stuff
2002-11-13 19:26:44 +00:00
Bill Currie
ec0273e3dc
do a pre and post pass for maps/mapname.cfg and use maps_default.cfg if
...
maps/mapname.cfg doesn't exist.
2002-11-08 02:43:04 +00:00
Bill Currie
ca4b3acd6c
big protototype cleanup. Now, except for a few cases, all non-static
...
prototypes are in headers files.
2002-11-05 19:12:51 +00:00
Bill Currie
aa36b85ba6
add PR_StringValid and PR_EdictValid to check the validity of progs string
...
and entity values without crashing.
2002-10-29 05:07:10 +00:00
Bill Currie
012cc58eb4
move the debug related stuff from pr_exec.c to pr_debug.c
2002-10-23 20:42:02 +00:00
Bill Currie
3a3da6a1c4
nuke PR_InitEdicts as it's redundant and only used in the tools due to
...
forgetting to remove it
2002-10-23 15:55:38 +00:00
Bill Currie
a4a5bb2d72
split out the parsing code
2002-10-23 04:57:08 +00:00
Bill Currie
80e85226b9
pr_xstatement now always reflects the currently executing statement making
...
debugging easier in the event of a segfault
2002-10-22 15:07:54 +00:00
Bill Currie
6203d450eb
resture pr_xstatement on return from PR_ExecuteProgram so recursive calls
...
don't mangle things with the new semantics of builtin calls
2002-10-22 02:51:57 +00:00
Bill Currie
aad04efe25
move the correct amount of bytes (I keep forgetting the * 4 :P)
2002-10-21 16:38:45 +00:00
Bill Currie
4810046f39
copy the correct number of bytes
2002-10-17 19:33:06 +00:00
Bill Currie
4da662eb47
implement pr_obj_msg_sendv
2002-10-16 22:17:26 +00:00
Bill Currie
be4b8096d4
two new instructions: move and movep: basicly memmove. qfcc support coming
...
as soon as I get it working :)
2002-10-16 06:44:41 +00:00
Bill Currie
1f0b6e84a5
change pr_obj_msgSend and pr_obj_msgSend_super so they either call builtin
...
methods directly or setup the progs struct for a normal function call to
call a progs method rather than recursively calling PR_ExecuteProgram. This
will reduce method call overhead (both cpu and stack usage), fix the loss
of tracing when calling a method and makes it possible to break out of the
progs engine simply if threaded progs are ever implemented.
2002-10-15 18:53:33 +00:00
Jeff Teunissen
575689296a
Tidy up progs dump output, and do some whitespace.
2002-10-08 19:46:42 +00:00
Bill Currie
eec3b7d8bc
fix missed header commit
2002-09-14 07:51:53 +00:00
Jeff Teunissen
e551c1f22b
New dump format for progs. It looks like assembly code. setting pr_debug to 2
...
or higher adds more debug information.
2002-09-14 07:00:40 +00:00
Bill Currie
ec47e08e1c
go back to using QFile, quakeio.h and quakefs.h
2002-08-27 07:16:28 +00:00
Bill Currie
5009213564
Move the signal handling code from video/targets/* to sys.c (I'm leaving
...
the SDL target files for Despair since he's working on the currently). Also
make progs segfault handling much more robust (and general: sigill etc too:)
2002-08-20 23:04:57 +00:00
Bill Currie
b99a72e876
pr_obj.c:
...
call obj_find_message with super instead of class when doing a super
lookup
client_menu.[ch]:
use the InputLine object instead of directly using the api
InputLine.r:
builint functions are = #0 , not = 0 :P
function.[ch]:
provide copy_params
method.[ch]
provide copy_keywordargs
expr.c:
call inc_users for the parm temp if it's a bind expression
revers a copy of the selector when building the selector name so the
selector doesn't get mangled
qc-parse.y:
catch erronous func = const inintializers (should be func = #const)
2002-08-20 02:09:34 +00:00
Bill Currie
c1c6c05cf5
pr_obj.c:
...
delay class fixups so order doesn't matter
class.c:
write out the class and category diffs properly
2002-08-16 22:53:37 +00:00
Bill Currie
c1f5659977
bi_inputline.c:
...
add InputLine_SetUserData
pr_resolve.c:
report the correct missing symbol (self instead of time)
2002-08-16 21:52:37 +00:00
Bill Currie
2ce0f2ded2
we now require modern autoconf (2.52+), automake (1.6+) and libtool (1.4+).
...
This gives us a bunch more flexibility. plugins no longer have the "lib"
prefix or the version suffix, they're now installed in
$fs_sharepath/QFplugins,, builds should take much less time (in general,
only one of pic or non-pic versions are build), bins and libs can have
individual CFLAGS
2002-08-01 19:49:10 +00:00
Brian Koropoff
439f9838d3
Whoops, missed some stuff that needed to be in idparse.h
2002-07-31 22:13:15 +00:00
Bill Currie
ad6e025a91
take cmd.[ch] back to basics. the gib code is temporarily gone pending
...
renovations. cmd_source handling is a little hacky in nq, but it's working.
2002-07-31 05:19:03 +00:00
Ragnvald Maartmann-Moe IV
227da6afba
Change pr_boundscheck default to 0. *grmbl*
2002-07-21 23:35:36 +00:00