* Use a version of STATIC_ASSERT that can be used as part of expressions
- Taken from the Linux kernel (<linux/kernel.h>)
* Add macro WZ_ASSERT_ARRAY which (statically) asserts that the given variable is an array
- the given array needs to have a compile-time defined size
- pointers will fail this assertion
* Verify that the expression given to ARRAY_SIZE is truly an array
- verify this using WZ_ASSERT_ARRAY_EXPR
* Catch & fix two coding errors resulting from wrong use of some macros
- macros: sstrcpy and ARRAY_SIZE
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8654 4a71c877-e1ca-e34f-864e-861f7616d084
Add allot more debugging for the input routine(s) to help find keymap issues.
*Change* Add a user friendly (numpad) clarification to the keymap editor, and also color it yellow.
*Change* Rename "Multiplayer Options" to "Multiplayer Options / Alliance dialog" to clarify what this is used for.
(r8376)
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8518 4a71c877-e1ca-e34f-864e-861f7616d084
This is used to differentiate LOG_ERROR (which is a *non* fatal error, but a error none the less) and fatal errors which result in program termination with no *visible* output (on windows/macs) on our end because of the crappy GUI functions so we usually dump it to stderr.txt and there is no clue that the program had to exit for whatever reason.
Hopefully, this will be helpful to windows people so they can differentiate between *our* exit/abort routines, and crashes that occur in drivers which look exactly the same since they get dumped back to the desktop with no visible clue why.
LOG_FATAL is *always* on in both debug & release builds.
On LOG_FATAL debug lines, on windows, we now throw up a modal dialog box with the current error message. At this time, this only happens when we have a error, and we use abort() right after the error, which makes it fatal.
That explains why this touches ~60 files :)
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8320 4a71c877-e1ca-e34f-864e-861f7616d084
*Adds LOG_FEATURE (--debug feature) so we can keep track of features.
*Disallow VTOLs from being able to poach features.
*Changes feature spawning from instant to a variable time period.
*When feature can't be placed, break out of routine instead of sending invalid data.
*Actually remove features, and notify others that the feature was removed. (AKA, actually sync between machines.)
ASSERT() when numNaybors is invalid.
Fix a spamming debug line mistakenly changed in r6677
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@6737 4a71c877-e1ca-e34f-864e-861f7616d084
* If initialisation of the debug callback failed, do ''not'' add it to the list of debug callbacks to use
This fixes ticket:136
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@6249 4a71c877-e1ca-e34f-864e-861f7616d084
* ASSERT_HELPER can be used by debug functions that wish to alter the location information attached and printed with ASSERTs
* Add some missing semi-colons (the previous ASSERT macro had a terminating semi-colon)
* Change an ASSERT that checks calloc's return value into an if() block (we can also run out of memory on non-debug builds...)
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5865 4a71c877-e1ca-e34f-864e-861f7616d084
* Add a new function dbgDumpLog to dumpinfo.cpp for dumping the last debug messages
* Add a debug output callback to dumpinfo.cpp which is used to fetch the debug messages and store them in a ring buffer
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5581 4a71c877-e1ca-e34f-864e-861f7616d084
put that into the debug call. Rename some categories to make them line up correctly in log.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@4684 4a71c877-e1ca-e34f-864e-861f7616d084
* Don't define windowsExceptionHandler when compiling with MinGW (as we don't use it on MinGW)
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@4587 4a71c877-e1ca-e34f-864e-861f7616d084
* one that works with the POSIX write() syscall on an integer file descriptor
* and one that works with WinAPI's WriteFile() function on a HANDLE
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@4513 4a71c877-e1ca-e34f-864e-861f7616d084
This way we get to see the message given by asserts in the dump file.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@3781 4a71c877-e1ca-e34f-864e-861f7616d084
Debugging info given with it will only be displayed for the enabled game object. Default key
to enable debugging info for a game object is CTRL+L. Converted LOG_MOVEMENT to use it.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@3432 4a71c877-e1ca-e34f-864e-861f7616d084
* Add a large quantity of debug() calls to game.c
* Correct some spelling errors in comments
Part of patch #853 by Buginator
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2826 4a71c877-e1ca-e34f-864e-861f7616d084
- Use WZ_CC_GNU_PREREQ (copied from glibc's features.h) instead of custom code
- Move platform.h into wzglobal.h
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2424 4a71c877-e1ca-e34f-864e-861f7616d084