Buginator
584c4f1aee
Add new routines for MSVC that allows us to toggle the allocation tracking.
...
Currently, it is only used in debug builds for strdup().
For release builds, we use _strdup().
This was necessary to prevent reporting of tons of 'memory leaks' caused by strdup(). Mostly caused by all the parsers lack of cleaning up after themselves.
Sample of what it does is shown. When we don't toggle the allocator, then it is added to the Normal Blocks. If we do toggle the allocator, then it is added to the CRT Blocks.
0 bytes in 0 Free Blocks means no memory leaks (for this quick loading of a SP mission--we still have LOTS of other leaks!)
I believe you can figure out what the rest of the stats mean.
0 bytes in 0 Free Blocks.
913860 bytes in 1826 Normal Blocks.
18745 bytes in 139 CRT Blocks.
0 bytes in 0 Ignore Blocks.
0 bytes in 0 Client Blocks.
Largest number used: 13564181 bytes.
Total allocations: 283917669 bytes.
2.3: r10250
refs ticket:1673
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@10261 4a71c877-e1ca-e34f-864e-861f7616d084
2010-03-14 09:21:16 +01:00
Cyp
d9a5af62ad
Fix building on mac (should really work this time). Maybe fix building on windows, maybe not, no idea if it was the same issue.
2010-03-11 09:42:38 +01:00
Cyp
6360e80f25
Try to fix new build warnings and a build error on mac.
2010-03-10 22:55:24 +01:00
Cyp
05575109b5
Try to clean up includes, fix missing extern on declaration of DataHash[].
2010-03-10 13:31:27 +01:00
Cyp
afaaf0b6e4
Random minor cleanup.
2010-03-06 23:02:36 +01:00
i-nod
382bfad14b
Define PRIu32 conversion macros for MSVC.
...
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@10173 4a71c877-e1ca-e34f-864e-861f7616d084
2010-03-06 22:59:05 +01:00
Cyp
7a1d9ead68
Replace trig usage with iSin/iCos, etc... Replace dirtyHypot with clean iHypot. Replace MIN(MAX()) with clip().
...
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@10155 4a71c877-e1ca-e34f-864e-861f7616d084
2010-03-05 14:43:37 +01:00
Cyp
b81d6685ce
Replace all use of trigSin/trigCos/trigIntSqrt and SIN/COS with the corresponding new i* functions. Remove the old ones.
...
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@10154 4a71c877-e1ca-e34f-864e-861f7616d084
2010-03-05 14:43:36 +01:00
Cyp
ac48bb876c
Replace int16_t casts with an angleDelta function, removing the corresponding 'Cast wrapping intended.' comments.
...
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@10153 4a71c877-e1ca-e34f-864e-861f7616d084
2010-03-05 10:08:10 +01:00
Per Inge Mathisen
ce9b2a62ff
Change fpathCheck() to use world coordinates to save some conversions. Add new macro worldTile() to complement mapTile() to save some typing.
...
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@10125 4a71c877-e1ca-e34f-864e-861f7616d084
2010-03-04 19:07:43 +01:00
Cyp
48421325ec
More cleanup of units and code. Squelch a couple of mac warnings.
...
16 files changed, 184 insertions(+), 467 deletions(-)
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@10124 4a71c877-e1ca-e34f-864e-861f7616d084
2010-03-04 19:07:43 +01:00
Cyp
5a13a31726
Simplify indirect targetting calculations. Improve the sqrt functions.
...
Mini-rocket arrays should no longer randomly fire high up into the air when the target is at a lower altitude, instead, the velocity should be reduced. (Looking at the code, it seems it was supposed to be a feature, not a bug.)
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@10088 4a71c877-e1ca-e34f-864e-861f7616d084
2010-03-04 19:07:38 +01:00
Cyp
61efba03b3
Use bigger buffers in registry_load, to avoid stack overflow if a key is longer than 31 bytes.
...
Probably closes ticket:https://bugs.launchpad.net/ubuntu/+source/warzone2100/+bug/520432
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@10086 4a71c877-e1ca-e34f-864e-861f7616d084
2010-03-04 19:07:38 +01:00
Cyp
6c811c1ecb
More unit changes and cleanup, remove now unused arccos and already unused arcsin tables.
...
No bugs intentionally fixed.
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@10083 4a71c877-e1ca-e34f-864e-861f7616d084
2010-03-04 19:07:38 +01:00
Per Inge Mathisen
924b6c5169
Changing object rotations to use 16 bit unsigned values instead of the current
...
mix of signed and floating point types. This allows us to use under and over
flow as features instead of failures. There are many conversions using DEG() and
UNDEG() in the code now - these should be read as TODO items for further work.
There is a high chance of bugs being introduced. Patch reviewed by Cyp_.
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@10067 4a71c877-e1ca-e34f-864e-861f7616d084
2010-03-04 19:07:37 +01:00
Cyp
80d7cdb475
Add some better trig lookup table functions, and make updateDroidOrientation use them.
...
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@10061 4a71c877-e1ca-e34f-864e-861f7616d084
2010-03-04 19:07:36 +01:00
Per Inge Mathisen
5f7aea25a3
In preparation for newnet branch, turn object positions into int32 values and
...
introduce the new typedef Position to hold them. Patch reviewed by Cyp_.
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@10052 4a71c877-e1ca-e34f-864e-861f7616d084
2010-03-04 19:07:36 +01:00
Christian Ohm
d6416c34eb
Return 0 in the various _lex_destroy int functions.
...
Original patch by Seismo (WarningC4716(_2).patch).
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9884 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-20 00:50:15 +01:00
Giel van Schijndel
60c55e4009
#undefine NOMINMAX before #defining it
...
Prevents warnings about #redefining previously #defined macros
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9869 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-19 18:00:09 +01:00
dak180
a3f8200327
Step 1 of X in getting translations working on the mac.
...
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9835 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-16 23:50:09 +01:00
Giel van Schijndel
946c9965f2
Replace ''all'' usage of BOOL in lib/framework with bool instead
...
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9812 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-15 20:51:08 +01:00
Giel van Schijndel
b3ea108cce
Replace some BOOL usage with bool
...
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9811 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-15 20:51:07 +01:00
Giel van Schijndel
40208015e4
string_ext.h doesn't actually use frame.h, so don't #include it
...
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9774 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-11 20:14:35 +01:00
Cyp
4651724689
Move #includes out of extern "C" blocks, make STATIC_ASSERT work in C++.
...
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9737 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-09 20:28:16 +01:00
i-nod
cec20aae6a
- NSIS changes from 2.3 ( #1111 ).
...
- Additional fixes to [9642]: remove old-1.10-balance.wz instead of origianl.wz.
- MinGW build system updates.
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9727 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-09 20:28:16 +01:00
Cyp
238d42c0f8
logical: Use separate pseudorandom number generator for game decisions, which should at some point be made to be synchronised between clients.
...
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9670 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-09 20:28:09 +01:00
Buginator
7266552505
Fix for 64bit compilers.
...
Reported by atis_home (thanks!)
closes ticket:1523
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9594 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-09 20:27:58 +01:00
Buginator
3a5f7d556b
Use #define NOMINMAX to disable the min / max macros in windows.h
...
instead of r9562
The other option was to use (std::max) as in, you have ( ) around min/max
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9589 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-09 20:27:57 +01:00
Cyp
8f034fe834
Workaround for Microsoft bugs such as #defining random words such as min and max.
...
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9562 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-09 20:27:55 +01:00
Per Inge Mathisen
8f51743062
Keep bitfields of vision knowledge for faster comparisons. This speeds up map vision updates by almost 15%. (Reviewed by Cyp_.)
...
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9559 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-09 20:27:54 +01:00
Christian Ohm
36acdc554b
Add Croatian translation by 13KukYNexus666.
...
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9474 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-09 20:27:43 +01:00
Guangcong Luo
3579209ab4
Fix bug #1466 - release builds shouldn't assert - fixes a ton of "crashes" in Mac OS X and Linux.
...
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9451 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-09 20:27:39 +01:00
Christian Ohm
3ab1a0104d
Update Spanish locale names.
...
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9370 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-09 20:27:25 +01:00
Cyp
6ddb1eadb2
cpp: Add extern "C" {} in headers.
...
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9336 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-09 20:27:21 +01:00
Christian Ohm
2b2a187172
Update Windows language table according to MSDN.
...
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9326 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-09 20:27:20 +01:00
Guangcong Luo
3ac9f53bf8
Add support for Cmd/Meta keyboard shortcuts. Make keyboard shortcuts look nicer: "lctrl - f11" to "Ctrl + F11" (Warzone keyboard shortcuts accept both LCtrl and RCtrl)
...
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9306 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-09 20:27:15 +01:00
Per Inge Mathisen
9c6b55f2d6
Remove unused definitions.
...
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9187 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-09 20:26:59 +01:00
Per Inge Mathisen
93f1d85e2d
Add new debug log category for saving whatever was sent to console.
...
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9102 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-09 20:04:29 +01:00
Guangcong Luo
357de2a6cb
Apply patch #1330 provided by Cyp - Add unicode support to text boxes and game-chat
...
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9101 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-09 20:04:29 +01:00
Christian Ohm
cd577664ca
Add Ukrainian translation.
...
Closes #947 .
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9039 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-09 20:04:22 +01:00
Buginator
1fc98725c8
frontport r7797
...
"In inputLooseFocus(), we clear the keyboard/mouse to the init state (KEY_UP).
fixes ticket:515 "
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8750 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 20:26:48 +01:00
Buginator
38528c7524
fix typo (r8709)
...
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8738 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 20:26:46 +01:00
Guangcong Luo
ad7e87792d
Use 32x32 cursors if unknown cursor type given.
...
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8723 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 20:26:44 +01:00
Christian Ohm
55f12a5d52
Hurd build fixes.
...
Closes #969 .
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8706 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 20:26:44 +01:00
Per Inge Mathisen
e73697495e
Forward port r8652 and r8626 (savegame fixing and breaking) from 2.3
...
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8696 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 20:26:42 +01:00
Giel van Schijndel
fbec26f8e1
Improve compile time code checking:
...
* 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
2010-01-30 17:12:54 +01:00
Guangcong Luo
d91693afb2
Hardware-accelerated cursors work correctly in Mac OS X now.
...
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8610 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 17:12:49 +01:00
Buginator
49f164b23f
Fix a out-of-order list
...
(r8516)
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8530 4a71c877-e1ca-e34f-864e-861f7616d084
2009-11-28 19:34:15 +01:00
Buginator
0d2a13a119
Fix a strange issue on some laptops, that have mapped their numpad enter key to the normal "return/enter" key.
...
Either key can now be used to submit the text your typing.
This fixes ticket:1055
NOTE: We *still need* unicode support!
(Multibyte support, and we should NOT use char, we need to switch to wchar_t)
(r8425)
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8527 4a71c877-e1ca-e34f-864e-861f7616d084
2009-11-28 19:34:14 +01:00
Buginator
d6e70a3c00
Filter out non-ASCII in our debug line
...
(r8380)
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8519 4a71c877-e1ca-e34f-864e-861f7616d084
2009-11-28 19:34:13 +01:00