asarium
4a9f1a2d56
Fix the rest of the string conversion warnings
2017-01-05 00:15:01 +01:00
asarium
7195ec9856
A few more fixes...
2017-01-04 00:28:22 +01:00
asarium
f819db3ac5
More string const correctness fixes
2017-01-04 00:12:41 +01:00
asarium
455ffd827a
Fix unresolved linking errors
2017-01-02 19:06:59 +01:00
asarium
9a8bfc0217
More const correctness
2017-01-02 13:17:59 +01:00
asarium
bcf2ddefba
Begin fixing string const correctness
2017-01-02 12:29:14 +01:00
asarium
df80f64598
Add const specifiers where possible
2016-12-28 17:47:46 +01:00
Yarn366
bff65254a1
Added character conversion to fiction viewer text to allow accented characters and such to display properly, provided that an appropriate font is in use.
2016-12-01 03:43:59 -05:00
asarium
c005602e8f
Fix reading credits table without #end
...
This just checks if the end of the file has been reached so existing
tables without the #end will still work (I'm looking at you
FSPort...).
2016-10-10 20:16:33 +02:00
asarium
4964fccd7e
Don't initialize mission text when it's not used
...
As far as I can tell this issue has been present for a very long time,
maybe even since retail. It was only uncovered since the recent changes
initialized the mission text by default which corrupted the table text
that was currently being parsed.
This also adds a unit test that validated that pausing works correctly.
2016-09-04 16:32:11 +02:00
asarium
16d5f8830e
Make sure that Mission_text is always initialized
...
This should fix #933 .
2016-09-04 11:15:02 +02:00
asarium
c9f9e1b2f0
Make sure that the parse strings are c strings
...
Fixes #933 .
2016-09-03 13:57:36 +02:00
Risto Toijala
a55b94b08a
Refractor atol2 to remove my_errno.
2016-08-26 15:04:36 +03:00
Risto Toijala
b898b04168
Refractor atof2 to remove my_errno.
2016-08-26 14:59:46 +03:00
Risto Toijala
b12b56d13f
Refractor atoi2 to remove my_errno.
2016-08-26 14:56:57 +03:00
asarium
20beb2eec1
64-bit warning fixes...
2016-08-23 23:17:41 +02:00
Fabian Woltermann
127976cd74
Weapon info flags conversion ( #851 )
2016-08-18 23:17:41 -07:00
asarium
0a7800d3ea
And another batch of warning fixes
2016-08-15 18:55:35 +02: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
asarium
6c3da4b455
Fix even more 64-bit warnings
2016-08-11 10:08:11 +02:00
asarium
bbeaaa1565
Add a new particle effect system
...
This is similar to the script I wrote a few years ago but unlike that
one, this solution doesn't kill the performance.
2016-08-04 11:08:39 +02:00
asarium
7b352e511c
Add new memory tracking subsystem
...
This expands the existing system which only worked on Windows to all
supported platforms.
If the MSVC debug runtime is not present then its behavior is emulated
by adding a header to each allocated memory block.
2016-07-29 11:02:45 +02:00
asarium
1bcd5400d3
Move build system to CMake
2016-07-22 12:07:19 +02:00
asarium
71a1f6c307
Fix Visual Studio warnings
...
The only major change is that all bpp variables in bmpman have been converted into ints. Before it was a mix of ubyte and int.
2016-07-20 13:49:41 +02:00
asarium
371c49724e
Turn invalid file error into warning
2016-06-16 19:49:34 +02:00
asarium
a1a8a53a65
Add validation when parsing a file spec
...
This issue was spotted by Taranis who encountered an assertion caused by
an empty file name. This check will make sure that every string parsed
as a file name will at least contain one character.
2016-03-10 18:33:43 +01:00
MageKing17
91dbf8b751
Improve consistency/flexibility of version-specific comments.
...
matches_version_specific_tag() now uses the previously-FRED-only scan_fso_version_string() function, meaning it now supports version-specific comments with as few numbers as ;;FSO 3;; to as many numbers as ;;FSO 3.7.3.20151106;;, instead of you being required to supply exactly 3 numbers.
2015-11-20 03:22:45 -08:00
MageKing17
238dbc5749
Makes vsprintf() stop chopping off the last character. Fixes issue #298 .
...
Also fixes saving missions in FRED, since it uses the same function.
2015-08-22 03:38:16 -07:00
asarium
51832fd563
Fix SCP_string version of vsprintf
...
The previous version didn't use the c-library which would cause incompatibilities with formats that assume all format specified to be supported.
2015-08-20 22:52:49 +02:00
asarium
eb765b0c99
Fir format warnings in parselo.cpp
2015-08-19 11:26:29 +02:00
Goober5000
bd3cd7eb18
Merge pull request #195 from Echelon9/fix/sort-uniq-includes
...
Review and refactor #include's
2015-08-19 00:05:02 -04:00
Echelon9
8c2c451e8e
Simplify duplicative parse/ 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
z64555
99a06b4839
Organizes required_string(); Doxy's required_string() and required_string_one_of()
2015-06-10 09:00:33 -05:00
asarium
88a85e4024
Improve gamesnd modular parsing
...
As requested by jg18, this improves the sound.tbl parser to properly handle +nocreate. If the file name of an entry should not be changed you have to specify <same>.
2015-05-08 08:48:17 +02:00
asarium
9aed627ce7
Replace longjmp with exceptions
...
Also added a EditorConfig file
2015-04-24 15:03:59 +02:00
MageKing17
83414b238d
Remove required_string_3() and required_string_4().
...
Replaced with usage of required_string_one_of(). (required_string_either() not removed due to different behavior.)
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@11321 387891d4-d844-0410-90c0-e4c51a9137d3
2015-04-23 12:09:06 +10:00
MageKing17
a233f62afb
Remove some redundant code in parselo.cpp.
...
7 cases in stuff_string() (both versions) were using identical code. Consolidated into one branch for clarity.
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@11320 387891d4-d844-0410-90c0-e4c51a9137d3
2015-04-23 12:08:31 +10:00
The_E
0808c3459f
If a text file to be read by the engine is in Unicode, abort. Could be something important we're missing.
...
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@11288 387891d4-d844-0410-90c0-e4c51a9137d3
2015-03-22 13:04:55 +10:00
Goober5000
87e8170268
add optional_string_one_of, which is useful to have
...
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@11211 387891d4-d844-0410-90c0-e4c51a9137d3
2015-01-14 17:29:43 +10:00
Goober5000
f7353121e6
m!m's fix for Mantis #3131 : contrary to the xt change from r11138, NULL is only returned on vm_malloc failure (so should never happen in normal execution)
...
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@11179 387891d4-d844-0410-90c0-e4c51a9137d3
2014-11-25 19:15:56 +10:00
niffiwan
866667a977
Fix mantis 3126 (from MageKing17)
...
Remove limit of 32 tbms being loaded for any given table type
2014-10-24 19:35:47 +10:00
Goober5000
dff2156c18
xt branch: more string safety
...
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@11138 387891d4-d844-0410-90c0-e4c51a9137d3
2014-10-13 18:23:41 +10:00
Goober5000
f23a3c5843
SCP_string is useful here too
...
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@11137 387891d4-d844-0410-90c0-e4c51a9137d3
2014-10-13 18:23:40 +10:00
Goober5000
dd353a74d8
add an Assertion about a buffer overflow vulnerability in split_str
...
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@11037 387891d4-d844-0410-90c0-e4c51a9137d3
2014-09-09 20:37:02 +10:00
Echelon9
cba4cc9943
Fix cppcheck (performance) Prefer prefix ++/-- operators for non-primitive types.
...
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@11015 387891d4-d844-0410-90c0-e4c51a9137d3
2014-08-23 13:05:06 +10:00
niffiwan
e6b8a433f1
Fix mantis 3097 (valgrind)
...
Don't read past the start of the string
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@11009 387891d4-d844-0410-90c0-e4c51a9137d3
2014-08-23 13:05:05 +10:00
Echelon9
01df45e37e
Fix Coverity 1093613 Negative array index read in stuff_loadout_list()
...
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@11003 387891d4-d844-0410-90c0-e4c51a9137d3
2014-08-17 18:50:11 +10:00
niffiwan
7defc6aeeb
Fix mantis 3086 (from Yarn)
...
Add special case to avoid crash from mismatched quotes in
tstrings.tbl German text
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@10977 387891d4-d844-0410-90c0-e4c51a9137d3
2014-08-11 18:54:04 +10:00
niffiwan
e93c1e94b6
Fix Coverity ID 1228858 Missing varargs init or cleanup
...
In required_string_one_of(int arg_count, ...)
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@10948 387891d4-d844-0410-90c0-e4c51a9137d3
2014-07-27 13:03:04 +10:00