Commit Graph

322 Commits (3a56a479b33c81f2f0754bf67ea2b0accfbe46ce)

Author SHA1 Message Date
Dennis Schridde 3a56a479b3 - Extend compiler detection with TinyCC
- Add window system detection
- Remove MSDOS from supported OSes


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2771 4a71c877-e1ca-e34f-864e-861f7616d084
2007-11-10 00:31:43 +00:00
Giel van Schijndel 96d5054729 * Make sure to #include <stdio.h> when compiling on MSVC so that those inline replacements for snprintf and vsnprintf will actually compile....
* Lets terminate statements with a semi-colon!!


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2745 4a71c877-e1ca-e34f-864e-861f7616d084
2007-11-06 18:36:37 +00:00
Giel van Schijndel 7b2530306c * On MSVC make sure to #define inline __before__ using it!!
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2744 4a71c877-e1ca-e34f-864e-861f7616d084
2007-11-06 18:30:19 +00:00
Giel van Schijndel 92e013e406 * Add static inline functions vsnprintf and snprintf when compiling with MSVC
* These functions comply to the C99 specification and return the amount of characters they would have written if no truncation occurred
Slightly modified form of patch file #3146 attached to bug #10269 by Buginator; applied the changes of this patch to wzglobal.h instead of version.c


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2742 4a71c877-e1ca-e34f-864e-861f7616d084
2007-11-06 14:07:50 +00:00
Dennis Schridde 94136efe24 Revert to the non-global static_assert, since MSVC is not ready for the global one, yet.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2697 4a71c877-e1ca-e34f-864e-861f7616d084
2007-11-03 21:42:55 +00:00
Per Inge Mathisen ccd725073e Add extra sanity checking to tagfile code to make it fail earlier rather than later.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2673 4a71c877-e1ca-e34f-864e-861f7616d084
2007-10-30 18:51:44 +00:00
Per Inge Mathisen 5567ae6e4b Add debug log call for tagfile errors.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2672 4a71c877-e1ca-e34f-864e-861f7616d084
2007-10-30 16:58:35 +00:00
Giel van Schijndel dcbef6f398 * Don't use variable array, structure members in RES_DATA
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2658 4a71c877-e1ca-e34f-864e-861f7616d084
2007-10-29 17:53:37 +00:00
Giel van Schijndel 0374c67a12 * Add a doxygen comment to source:trunk/lib/framework/strlfuncs.h describing macro STR_L_FUNC_TRUNCATION_DETECT
* Replace (the last) strncpy() call in nettyps.c with a strlcpy() call


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2647 4a71c877-e1ca-e34f-864e-861f7616d084
2007-10-27 20:20:35 +00:00
Per Inge Mathisen 9609cb0005 Use full path to frame.h. Patch in bug #10208 by unknown.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2642 4a71c877-e1ca-e34f-864e-861f7616d084
2007-10-27 17:30:49 +00:00
Giel van Schijndel f5602b4778 * Replace a large amount of strncpy() calls with the safer strlcpy()
* Fix an error in src/game.c where we would use the wrong size as parameter to strlcpy()


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2640 4a71c877-e1ca-e34f-864e-861f7616d084
2007-10-27 16:18:52 +00:00
Giel van Schijndel 613a38364e * Make resSetBaseDir const correct (char* -> const char*)
* Document the "fileName" parameter of makeLocaleFile in the Doxygen comment


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2639 4a71c877-e1ca-e34f-864e-861f7616d084
2007-10-27 16:12:00 +00:00
Per Inge Mathisen 1811aa0cdb Use secure version of snprintf on Windows (_snprintf_s).
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2638 4a71c877-e1ca-e34f-864e-861f7616d084
2007-10-27 15:50:45 +00:00
Giel van Schijndel bd37e62cb2 * Replace a lot of strncat(dst, src, sizeof(dst) - strlen(dst) - 1) calls with the less bloated strlcat(dst, src, sizeof(dst)) form
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2637 4a71c877-e1ca-e34f-864e-861f7616d084
2007-10-27 15:47:17 +00:00
Giel van Schijndel 6b4cba1700 * Rename pLevelName to aLevelName (hungarian notation is a pain. Especially when it's wrong!)
* Get rid of several magic numbers
 * Some const correctness
 * Replace a huge amount of strcpy(), strcat(), strncpy() and strncat() calls with a strlcpy() and strlcat() calls respectively


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2635 4a71c877-e1ca-e34f-864e-861f7616d084
2007-10-27 14:35:35 +00:00
Giel van Schijndel 673812b2a4 * Add file strlfuncs.h; this file contains an inline implementation of strlcpy and strlcat (safer variants of strncpy and strncat respectively)
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2627 4a71c877-e1ca-e34f-864e-861f7616d084
2007-10-26 17:05:29 +00:00
Dennis Schridde 20bc25c107 Windows MiniDumper: resultMessage is always null-terminated and MessageBox is always shown. => Move out of ifs.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2626 4a71c877-e1ca-e34f-864e-861f7616d084
2007-10-25 23:32:20 +00:00
Dennis Schridde a923b6a000 Dump used compiler and version, too.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2625 4a71c877-e1ca-e34f-864e-861f7616d084
2007-10-25 23:23:21 +00:00
Giel van Schijndel e06c186bd6 * Replace a _lot_ of strcpy(), strcat() and sprintf() calls with the safer strncpy(), strncat() and snprintf() respectively
* Refactor NETlogEntry() to use the array of strings (packetname[]) instead of a large switch-statement with a lot of copy & pasted code


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2617 4a71c877-e1ca-e34f-864e-861f7616d084
2007-10-24 21:11:29 +00:00
Giel van Schijndel 3446fb2b87 * Remove __FILE__ prefix in debug() call as debug() apparently adds __FILE__ already (noted by Per)
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2616 4a71c877-e1ca-e34f-864e-861f7616d084
2007-10-24 19:40:39 +00:00
Giel van Schijndel 329c6637d8 * Check malloc's return value
* Don't perform assertions on the content of uninitialized memory, it's useless and annoying when they fail


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2615 4a71c877-e1ca-e34f-864e-861f7616d084
2007-10-24 17:20:29 +00:00
Giel van Schijndel e6827605e2 * Fix a rather large memory leak as reported in bug #10190
* In this bug-report calling free() twice (once on psRes->aID then on psRes) was proposed
   * Instead just ''over allocate'' the memory for psRes so that a single free() call on psRes will suffice

git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2614 4a71c877-e1ca-e34f-864e-861f7616d084
2007-10-24 16:54:53 +00:00
Per Inge Mathisen 6cf0e01f0b Add write and read methods for bools to tagfile framework. Remove enum write macro.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2599 4a71c877-e1ca-e34f-864e-861f7616d084
2007-10-23 20:21:18 +00:00
Per Inge Mathisen 9ec705bd9c Add new debug tag LOG_MAP
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2597 4a71c877-e1ca-e34f-864e-861f7616d084
2007-10-23 18:18:48 +00:00
Dennis Schridde d5601ebc91 Found a version of the STATIC_ASSERT which also works in global scope.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2592 4a71c877-e1ca-e34f-864e-861f7616d084
2007-10-22 20:53:27 +00:00
Per Inge Mathisen ffc1f75aac Silence asserts going off on working separator tags in tagfile code.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2589 4a71c877-e1ca-e34f-864e-861f7616d084
2007-10-22 20:09:55 +00:00
Per Inge Mathisen 3bd357ed08 Fix some mistakes and remove debug printfs from tagfile code.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2587 4a71c877-e1ca-e34f-864e-861f7616d084
2007-10-22 19:33:47 +00:00
Per Inge Mathisen c9b25c5738 Add the tagfile framework that we will use for our new savegame format, and related
unit tests. First sketch of new defined savegame format in tagfile_map.def.


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2586 4a71c877-e1ca-e34f-864e-861f7616d084
2007-10-22 18:40:34 +00:00
Dennis Schridde eff43d1fa1 Spelling mistake
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2556 4a71c877-e1ca-e34f-864e-861f7616d084
2007-10-16 21:07:10 +00:00
Dennis Schridde 8151788f14 Giel wants this to be commented...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2555 4a71c877-e1ca-e34f-864e-861f7616d084
2007-10-16 20:57:55 +00:00
Dennis Schridde ceb1a432bc Proper fix for ICC warning "argument is incompatible with corresponding format string conversion".
The fix which silenced the warning in r2550 was wrong.


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2553 4a71c877-e1ca-e34f-864e-861f7616d084
2007-10-16 20:51:34 +00:00
Dennis Schridde c7b00fadaf More work on the ICC front:
- Less strict warnings in debug-mode (still unusable, because ICC warns about _a lot_)
- Explicit conversions
- Clarify parameter evaluation order


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2550 4a71c877-e1ca-e34f-864e-861f7616d084
2007-10-15 18:09:18 +00:00
Dennis Schridde 87d55b978b Basic buildfile support for ICC and silence one warning.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2524 4a71c877-e1ca-e34f-864e-861f7616d084
2007-10-02 21:43:43 +00:00
Giel van Schijndel 470ea85417 * Remove lib/framework/utf8.c[ch] as we don't need it just right now (we can always revert this commit later on if necessary)
* This commit removes utf8.[ch] from all build systems (manual text-editing for the most of them)
 * For the removal from the XCode project I just reverted r2288

git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2477 4a71c877-e1ca-e34f-864e-861f7616d084
2007-09-25 19:46:10 +00:00
Dennis Schridde 6627ecbc6a Fix "incompatible declarations" found by batched compiling.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2460 4a71c877-e1ca-e34f-864e-861f7616d084
2007-09-16 14:05:01 +00:00
Giel van Schijndel 9db9ca51ea * Add Doxygen comments to lib/framework/strnlen1.h
* Fix some errors in lib/framework/utf8.h comments


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2459 4a71c877-e1ca-e34f-864e-861f7616d084
2007-09-15 23:37:32 +00:00
Dennis Schridde 274abd14ca Fix WZ_DECL_FORMAT for non >=gcc-2.5
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2430 4a71c877-e1ca-e34f-864e-861f7616d084
2007-08-22 18:04:07 +00:00
Dennis Schridde 63a38d0da9 Include unistd.h for MinGW as well.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2428 4a71c877-e1ca-e34f-864e-861f7616d084
2007-08-21 14:52:50 +00:00
Dennis Schridde 20fe87c0f4 AM: Add lexers to BUILT_SOURCES and CLEAN_FILES as well.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2427 4a71c877-e1ca-e34f-864e-861f7616d084
2007-08-21 13:16:09 +00:00
Dennis Schridde e232e9a6b5 Yacc warning fixes by Pseudonym404 (http://forums.wz2100.net/index.php?topic=148.msg7837#msg7837):
- adding *.tab.c to BUILD_SOURCES and CLEANFILES before *.tab.h in applicable Makefile.am files causes *.tab.c to be the file that triggers the %.tab.h %.tab.c: %.y rule, resulting in the command run being "bison -y  -d -o[...].tab.c [...].y", not "bison -y  -d -o[...].tab.h [...].y", which (aside from being correct syntax Wink ) stops "warning: conflicting outputs to file `[...].tab.h'"
- chat_parser.y had %token _T_A declared twice, second instance removed
- audp_parser.y had trailing | signs (presumably from when NULL wasn't commented out)


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2426 4a71c877-e1ca-e34f-864e-861f7616d084
2007-08-21 13:03:09 +00:00
Dennis Schridde fbd3a9c394 Use Unix PATH_MAX as default and thus move all "fixes" to Windows.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2425 4a71c877-e1ca-e34f-864e-861f7616d084
2007-08-21 12:59:05 +00:00
Dennis Schridde 08a43494fd - Clean up macros a bit more
- 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
2007-08-21 12:30:00 +00:00
Dennis Schridde 3d6d40f5dd - Update WZ_OS_/WZ_CC_ definitions from Qt 4.3.1 and don't strip OS detection them anymore.
- Fix attribute prerequisites.
- Remove wz__attribute and add WZ_DECL_FORMAT.


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2423 4a71c877-e1ca-e34f-864e-861f7616d084
2007-08-21 11:21:20 +00:00
Dennis Schridde 51a467d649 Remove CHAR_BIT check which is not needed anymore.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2422 4a71c877-e1ca-e34f-864e-861f7616d084
2007-08-21 10:43:16 +00:00
Giel van Schijndel b5e548e800 * Use a union instead of first casting to void* before casting to uint32_t* from float* (prevents type punning of pointers)
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2412 4a71c877-e1ca-e34f-864e-861f7616d084
2007-08-17 22:17:16 +00:00
Giel van Schijndel 551aa55cb9 * Use SDL_EnableKeyRepeat to enable the repeation of key press events (this enables you to press your 'A' key once and get multiple 'A's if your in a textbox)
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2380 4a71c877-e1ca-e34f-864e-861f7616d084
2007-08-16 09:30:50 +00:00
Giel van Schijndel 29c1229322 * Prevent a warning about "dereferencing type-punned pointer will break strict-aliasing rules" by casting a &float through a void* before casting it to uint32_t*
* Add an explanation about floats (that they're basically the same as 32bit integers as far as endianness conversions are concerned)

git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2379 4a71c877-e1ca-e34f-864e-861f7616d084
2007-08-16 09:09:30 +00:00
Giel van Schijndel 1ee0356036 * Adapt the writeFXData and readFXData functions to use the PHYSFS big endian swapping write and read functions
* Don't write directly from the memory of the EFFECTs (since this memory doesn't always have the same size on 32vs64bit systems)
 * Guarantee to always write the IMD's hash number as if it's a uint32_t (this fixes 64bit compatibility of these functions)
 * Add functions openLoadFile and openSaveFile which perform the file opening for loadFile2 and saveFile and now readFXData and writeFXData as well

git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2378 4a71c877-e1ca-e34f-864e-861f7616d084
2007-08-15 21:26:05 +00:00
Dennis Schridde 0cf8a9af36 Update dbghelp.h to Wine 0.9.43.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2370 4a71c877-e1ca-e34f-864e-861f7616d084
2007-08-12 01:03:38 +00:00
Giel van Schijndel 74e64738fa * Add network primitives by Freddie Witherden <EvilGuru>
* Modify them slighly to use get/set functions for the package direction (instead of a global accessable to all files which forward declare it)
 * Add a NETfloat to the set of primitives
 * Modify NETstring to use strnlen1 instead of strnlen which is a GNU extension to the C library (strnlen1 has been copied from gettext 0.16.1 which is GPLv2+)
NB: rerun your buildsystems
NB2: Xcode requires an update

git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2358 4a71c877-e1ca-e34f-864e-861f7616d084
2007-08-08 18:50:28 +00:00