asarium
39ab45dc7c
Add macro for marking unreachable code
...
This can be used for mark parts of the code which should be unreachable
in normal execution. In debug mode, if such a statement is reached an
Error dialog is shown which aborts the execution. In release mode the
macro is replaced with a compiler specific expression that lets the
compiler know that this part is unreachable which allows it to optimize
the code better.
2018-06-09 17:38:17 +02:00
asarium
eeed22b91a
Enable misc-unused-parameters
...
clang-tidy was used for fixing the warnings. It is not clear if this is
actually an improvement so this may still be disabled later.
2018-04-25 11:57:55 +02:00
z64555
73504f80a5
Treat cleanup_mode as enumeration
...
*Use Assertions instead of the clunky Error/Warning pairs.
2017-02-01 01:36:16 -06:00
z64555
95315d7f8a
Optimizes dock_undock_objects() and dock_dead_undock_objects() methods by removing their dock pair check, because the same check is done in the remove_instance subroutines.
...
* Adds a warning for debug users when an unknown ship_state is passed to red_alert_delete.
* Removes commented-out code
* Doxy's ship_cleanup()
*Conform to each file's style.
*Extend ship_cleanup to better handle red-alert deletion.
*Also treat cleanup_mode as a flagset, instead of an enum as it was previously.
2017-02-01 01:35:45 -06:00
z64555
6577d53df8
Fixes red-alert missions where escorted ships were dead or otherwise not carried into the red-alert mission.
...
*Use existing methods to determine dock status and find the head of the dock list.
*Fixes a derp with dock_dead_undock_all()
*Doccument some docking methods in object.h
*Address requested changes.
2017-02-01 01:35:09 -06:00
z64555
944ed03553
Added undock_all routines. Added asserts to public methods.
2017-02-01 01:34:29 -06:00
Fabian Woltermann
770fce8de5
Bitset flags -- take 2 ( #775 )
...
This introduces a new mechanism for handling bit flags. Instead of using an int (or two, or three) to write bits into, this uses the std::bitset in a wrapper class that accepts an enum class as input. This means that certain classes of errors we've had a few of in the engine, where a coder used the wrong set of flags or checked them against the wrong variable (SF_STEALTH vs SIF_STEALTH, for example) can now be detected at a compiler level rather than not at all.
2016-08-12 16:13:50 -07:00
Echelon9
29faabdfb3
Simplify duplicative object/ includes.
2015-06-22 20:24:31 +10:00
Echelon9
c5493bb480
Scripted sort and uniq on (internal) project includes. Improves search time and as a by product removed a number of duplicative includes.
2015-06-22 20:24:30 +10:00
Goober5000
6b97f368e8
sync functions for freeing dock instances
...
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@10059 387891d4-d844-0410-90c0-e4c51a9137d3
2013-11-17 20:24:42 +10:00
Goober5000
d310647bfe
clear dock lists when objects are deleted, and redundantly clear them between missions and when object instances are destroyed (Mantis #2952 )
...
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@10058 387891d4-d844-0410-90c0-e4c51a9137d3
2013-11-17 20:24:42 +10:00
Goober5000
b5f278c91c
a modified version of Echelon9's fix for Mantis #2897 (heap corruption due to object indexes being too large for the object dock bitstring)
...
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9708 387891d4-d844-0410-90c0-e4c51a9137d3
2013-07-26 08:14:30 +10:00
Echelon9
9f361b791d
Fix a few malloc/vm_malloc changes to properly track memory usage; fix a potential NULL dereference in parse/lua.cpp
2010-11-20 08:25:16 +00:00
Goober5000
7b8c035320
revert portej05's removal of the bitstring code
2010-06-14 06:56:52 +00:00
portej05
02b5fd1496
Remove bitarray.h and substitute with simpler functions (tested via Zacam, Flaming_Sword and portej05)
2009-11-23 12:12:09 +00:00
portej05
719825f80d
The big CVS comment removal. This chops approx. 3.5mb off a full checkout.
...
I've tested this through compiling and through hand checking.
Normalises line endings in ALL files to \n.
2009-06-20 08:08:20 +00:00
Goober5000
bd7be99c55
this should really be capitalized
2007-07-28 21:31:11 +00:00
Goober5000
82cfac7ec0
make the parse object array dynamic; also made the docking bitstrings dynamic
2007-07-28 21:17:56 +00:00
Goober5000
3c3416fa3b
the great big duplicate model removal commit
2007-02-20 04:20:38 +00:00
Goober5000
e27dfe36ea
add another method for calculating dimensions of docked objects, plus improve an existing one
...
--Goober5000
2006-07-21 05:41:10 +00:00
Goober5000
7e41877b7b
proper capitalization according to Volition
2006-04-20 06:32:30 +00:00
Goober5000
ff3cb87bb6
comment fixage
2005-10-30 20:20:44 +00:00
Goober5000
e2092f240b
nitpicked a rather dumb non-bug
...
--Goober5000
2005-10-28 06:10:07 +00:00
Goober5000
3475444eee
moved some prototypes that WMC put in the header file back to the implementation file
...
--Goober5000
2005-05-27 03:37:53 +00:00
taylor
3f6e13d20b
use vm_malloc(), vm_free(), vm_realloc(), vm_strdup() rather than system named macros
...
fixes various problems and is past time to make the switch
2005-05-12 17:49:18 +00:00
taylor
7f786136a6
s/vector/vec3d/g, better support for different compilers (Jens Granseuer)
2005-04-05 05:53:25 +00:00
wmcoolmon
02e75ddd49
Merge of WMC's codebase. "Features and bugs, making Goober say "Grr!", as release would be stalled now for two months for sure"
2005-03-03 06:05:32 +00:00
wmcoolmon
ac993ba2e6
Got rid of a couple annoying compiler warnings
2005-02-10 04:05:42 +00:00
Goober5000
be761d4fc1
nitpicked some boolean tests, and fixed two small bugs
...
--Goober5000
2005-01-30 09:27:41 +00:00
Goober5000
599da97f1b
docking fixes for FRED
...
--Goober5000
2005-01-29 05:34:30 +00:00
Goober5000
099d2700d0
multiple ship docking :)
...
don't tell anyone yet... check the SCP internal
--Goober500
2005-01-11 21:38:51 +00:00