Bill Currie
7970525ef4
[util] Make va thread-safe
...
It now takes a context pointer (opaque data) that holds the buffers it
uses for the temporary strings. If the context pointer is null, a static
context is used (making those uses of va NOT thread-safe). Most calls to
va use the static context, but all such calls have been formatted
consistently so they are easy to find when it comes time to do a full
audit.
2021-01-31 16:05:48 +09:00
Bill Currie
23a38738fc
Massive whitespace cleanup.
...
Lots of trailing whitespace and otherwise blank lines.
2012-05-22 08:23:22 +09:00
Bill Currie
bc1b483525
Nuke the rcsid stuff.
...
It's pretty useless in git.
2012-04-22 10:56:32 +09:00
Bill Currie
99c0954b47
the big dso visibility patch :). Sure, we have to have unique names for static builds, but with controlled visibitly we should get faster program loads (although this isn't C++, so it's not as bad) and complex plugins are cleaner.
2007-03-10 12:00:59 +00:00
Bill Currie
3fb03fc2be
hah, should have been using __attribute__((used)) all that time (rather
...
than __attribute__((unused))). fixes the missing console in -x11
2005-08-04 15:27:09 +00:00
Brian Koropoff
e707e9bb89
Moved gib_*.h into include/ and moved the necessary declarations and struct
...
definitions to QF/gib.h to interface with libQFgib.
2003-04-13 22:07:58 +00:00
Brian Koropoff
d8c0f50c11
The ultimate GIB bugfix commit, including reworked semantic processing,
...
a fix for arguments passed to a GIB function run via rcon, and various
other fixes.
2003-04-11 02:57:11 +00:00
Brian Koropoff
7f72596ab5
Fix a bug with embedded commands and make the parser more anal about what
...
can be embedded.
2003-02-28 05:07:15 +00:00
Brian Koropoff
ce80fffe69
Massive bug and memory leak fixing.
2003-02-26 07:44:34 +00:00
Brian Koropoff
61d315755a
Fix a braino that most likely broke concatenation.
2003-02-26 02:51:40 +00:00
Ragnvald Maartmann-Moe IV
5fc069753a
Warning fix (c might be used before initialization).
...
Too tired to check if there's an actual bug there. Goodnight...
2003-02-25 08:35:31 +00:00
Brian Koropoff
020a9262f7
Made the parser anal about concatenation usage and fixed several bugs by
...
running /dev/urandom through carne to catch problems.
2003-02-25 08:04:48 +00:00
Brian Koropoff
c9fbb334f1
Cleaned up the GIB parser and GIB_Execute() a lot. Made aliases work in
...
GIB. Added some breakpoint GIB builtins for debugging script/intepreter
interactions. Made carne work properly again (local variables don't
disappear in interactive mode)
2003-02-25 06:52:27 +00:00
Brian Koropoff
00d71f13f6
Make %var expansion actually work.
2003-02-17 08:55:40 +00:00
Brian Koropoff
760210dc7b
GIB: Many bugfixes and cleanups. Added bitwise math operations, expansion
...
of leaf names in a stem variable via %var, the builtin functions 'count'
and 'contains', and an initial interface between qw-server and GIB to allow
querying of clients and their info strings. Also cleaned up the chat event
interface a bit. Renamed a few builtins.
2003-02-16 19:46:34 +00:00
Bill Currie
c91137e4db
run gib through indent
2003-02-14 22:42:11 +00:00
Brian Koropoff
3c522a83bc
Various cleanups and bugfixes. Added proper line number reporting to
...
errors. A few new builtin functions, such as slice::find and thread::list.
2003-02-14 08:06:01 +00:00
Brian Koropoff
5870c2cbce
Nuked some code obsoleted by reference counting.
2003-01-31 21:47:16 +00:00
Brian Koropoff
b0e6f46b7e
GIB: Even more bugfixes.
2003-01-31 05:22:20 +00:00
Brian Koropoff
47d35f3e2d
GIB: Added ifnot, fixed several bugs, updated zoom.gib yet again.
2003-01-31 03:43:56 +00:00
Brian Koropoff
580ca17546
GIB: Added proper reference counting on parse trees, got threads working
...
again, added a few new builtins and renamed some others, made misc. fixes
and enhancements.
2003-01-30 23:26:43 +00:00
Brian Koropoff
1f5cabcba9
A few GIB bugfixes, cleanups, and enhancements. Still more to come.
2003-01-29 04:34:23 +00:00
Brian Koropoff
06cd013fc6
Fix for older compilers that only allow variables to be declared at the top
...
of a program block.
2003-01-28 23:55:21 +00:00
Brian Koropoff
59fbd48a81
Overhauled GIB to parse scripts in advance, among other design and language
...
changes. There still remains some bugs to be squashed, a feature or two to
add, and some polishing to be done. However, it seems to be in a workable
state.
2003-01-28 21:16:21 +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
Brian Koropoff
091e9d3f3d
A few cleanups, and made assignment/incremement/decrement operations
...
return a value.
2003-01-03 04:10:50 +00:00
Brian Koropoff
32e5e6ef0b
Numerous GIB bug fixes and optimizations. Fixed/updated some GIB scripts
...
as well.
2002-12-13 23:36:05 +00:00
Brian Koropoff
74ee0cfd0e
Changed the behavior of field::get with a null field separator to match
...
that of for loops. Added support for var++, var--, var += foo, var -= foo,
var *= foo, and var /= foo.
2002-12-10 00:04:15 +00:00
Brian Koropoff
91266619f3
Added the sqrt and abs math functions and the continue GIB builtin. I
...
changed where a loop program gets copied back into its buffer so that the
continue builtin would work.
2002-12-08 20:55:40 +00:00
Brian Koropoff
0e0d8bd542
Added support for enclosing embedded commands in $() and cleaned up the
...
parser a bit to accomodate this. Backslashes in double quotes are now only
removed if they escape a character that can't be written normally, or
another backslash. Removed start position support from string::findsub
since variable slices can be used instead. Added support for regular
expressions in the form of regex::match, regex::replace, and
regex::extract. Checked in regex.c from GNU regex 0.12 for platforms that
do not have regex functions in their standard library. Two minor changes
were made to this file to fix gcc warnings. Prepared the path transform
function for a change to a filesystem rooted at fs_userpath instead of the
current gamedir, but these changes are commented out pending security
considerations.
2002-11-19 04:15:36 +00:00
Brian Koropoff
d4b1c74866
Added the string::findsub builtin. Added a reset function to the cbuf
...
interpreter struct so that custom cbuf data can be reset after an error.
This fixes a bug where GIB would think it was still waiting for a return
value after an error occurred in an embedded command.
2002-11-16 20:56:04 +00:00
Brian Koropoff
b40400d59c
Moved GIB into libs/gib and made util no longer depend on it. Cleaned up
...
some cruft from a previous incarnation of GIB.
2002-11-09 07:13:52 +00:00
Bill Currie
544ca8118a
"gib" never got all that useful, and with the new command parser coming in
...
and csqc, it's pretty obsolete, too.
2002-03-05 21:47:03 +00:00
Bill Currie
b1f4a778f9
the rcsid commit from hell }:>
2001-09-28 06:26:31 +00:00
Ragnvald Maartmann-Moe IV
dc947ce8f5
Whitespace.
2001-09-10 12:56:23 +00:00
Bill Currie
1c9e1b176f
fear the mighty const correct patch
2001-07-15 07:04:17 +00:00
Chris Ison
14fc2d0b6c
added GPL comments and fixed missing include in gib_modules.c
2001-05-25 20:31:47 +00:00
Joseph Carter
c5735d2f19
A little sanity in gib's header deps. Not much granted, but it's there.
2001-05-25 16:09:14 +00:00
Bill Currie
eb95bcae84
move the gib language out of nq and into its own dir (hehe, libQFgib:)
2001-05-17 21:45:56 +00:00