Commit graph

5037 commits

Author SHA1 Message Date
Matt Vandermeulen 28f307eb85 Fixes #5 - Byteswap header renamed to byteutil, plus sed magic
[Kp: switch to #pragma for byteutil.h]
2014-07-03 02:03:08 +00:00
Kp 7a1b103ed1 Reduce template recursion in serializer 2014-07-02 03:08:44 +00:00
Kp 9f03076a58 Remove write-only variable Beam_brightness 2014-07-02 02:31:32 +00:00
Kp 36685d3938 Fix off-by-one bugs in bmread workaround 2014-07-02 02:29:35 +00:00
Kp 6222b58bbc Move uvl_list into g3_draw_rod_tmap 2014-07-01 03:10:56 +00:00
Kp d8a1971769 Decode transparent RLE in pieces 2014-07-01 02:30:39 +00:00
Kp b6033c49f2 Use unsigned transparent bitmap bounds 2014-07-01 01:34:16 +00:00
Kp 3abc33d6cc Optimize gr_rle_decode 2014-06-30 23:56:51 +00:00
Kp 9cf70f29f6 Fix forcing features off 2014-06-30 03:31:54 +00:00
Kp 8958a0dfbe Remove unnecessary typename usage 2014-06-30 03:25:47 +00:00
Kp deb700950f Work around bmread use of uninitialized memory
bmread copies from a stale pointer into a local buffer.  If the stale
pointer points to null bytes, this is stupid but harmless.  If the stale
pointer points to a large run of non-null bytes, this crashes the game.
Modify PHYSFSX_fgets to clear the unused portion of the return buffer to
work around this bmread bug.  Otherwise using shareware data crashes the
game at startup.
2014-06-28 23:30:46 +00:00
Kp d6c012ce4d Fix brown-wall robots in D1 non-editor build
tmap == -1 means no override, but 7b33018c changed the comparison to be
true when given negative inputs.  Since -Wsign-compare is off, this was
not caught by the compiler.
2014-06-28 15:29:25 +00:00
Kp d0b3d9e32e Force desired conversion in render_object_search 2014-06-28 04:13:42 +00:00
Kp d35b021ac6 Fix misspelled C++ guard in loadgl.h 2014-06-28 03:57:57 +00:00
Kp 11cbbf66fc Fix Win32 newmenu_do build failure 2014-06-28 03:54:36 +00:00
Kp 78559cdc62 Cast network buffers for compatibility with Win32 prototype
Win32 deviates from BSD and sets the buffer type as char*
2014-06-28 03:52:37 +00:00
Kp a301eb97ed Cast fix64->unsigned long in HUD
Fix format warning when unsigned long is smaller than fix64
2014-06-28 03:50:08 +00:00
Kp 39a56ae244 Unpack UDP_mdata_store 2014-06-27 03:11:39 +00:00
Kp 71e7458bd8 Avoid memory corruption when moving UDP queues
Passing overlapping ranges to memcpy leads to undefined behavior.  Some
versions of glibc copy backwards, causing incorrect results when the
ranges overlap.  Switch to std::move to guarantee a copy forward and to
ensure proper handling of any future class members.

See https://lwn.net/Articles/414467/
2014-06-27 03:11:39 +00:00
Kp 6091496b28 Unpack UDP_mdata_info 2014-06-26 03:17:23 +00:00
Kp c7b161cf2d Unpack UDP_frame_info 2014-06-26 03:17:23 +00:00
Kp f1970ad129 Unpack netplayer_info 2014-06-26 03:17:23 +00:00
Kp 291d11d17e Unpack UDP_sequence_packet 2014-06-26 03:17:23 +00:00
Kp 65fedf7b59 Unpack netgame_info 2014-06-26 03:17:23 +00:00
Kp e99b496d72 Unpack game_cheats 2014-06-26 03:17:23 +00:00
Kp 93e90b6f0b Unpack cheat_codes[] 2014-06-26 03:17:23 +00:00
zico 56769113e5 Removed PKilledFlags-hack since not being necessary anymore with ordered traffic 2014-06-24 14:52:18 +02:00
zico f6a18e05a6 Reworked packet loss prevention system to send and receive protected packets in correct order 2014-06-24 14:49:18 +02:00
Kp da1bd2fd08 Precompute collision tables 2014-06-24 03:40:31 +00:00
Kp dc3924c076 Precompute MVE tables 2014-06-24 03:08:42 +00:00
Kp 90300d54d9 Precompute fix_recip table 2014-06-23 04:46:07 +00:00
Kp ef20958fcc Refactor C++ standard test 2014-06-23 04:46:07 +00:00
Kp 7836562a24 Switch serial pad constants to static const 2014-06-22 22:12:17 +00:00
Kp 77ba463614 Compile out unneeded pad initialization 2014-06-22 22:04:23 +00:00
Kp 22a6906702 Update example INI for stricter parsing rules 2014-06-22 21:58:55 +00:00
Kp ecce4c6745 Ignore INI lines that start with ; 2014-06-22 21:56:41 +00:00
Kp b3c953375c Read lines in blocks 2014-06-22 21:56:03 +00:00
Kp fb89da37d1 Remove _may_repeat on check_cxx_works
self.__automatic_compiler_tests prevents repetition.
2014-06-22 21:05:25 +00:00
Kp ad3e540b62 Simplify lengthof header 2014-06-22 21:05:08 +00:00
Kp 599520fabb Add operator bool to exact_type<T> 2014-06-22 21:03:23 +00:00
Kp 3bdeab03a7 Unify dumpmine tmap loop 2014-06-22 21:02:49 +00:00
Kp e6655f9481 Use std::vector for lrgb_list 2014-06-22 21:01:31 +00:00
Kp b9de0787ce Optimize multi_send_drop_marker 2014-06-22 20:59:04 +00:00
Kp 362f0a5d23 Use array<> for Point_segs 2014-06-22 20:56:47 +00:00
Kp 794572b771 Enable using count_array_t<T,S> with prohibit_void_ptr<T> 2014-06-22 19:06:52 +00:00
Kp c4b31f875f Use array<> for MarkerMessage 2014-06-22 18:53:42 +00:00
Kp dc42dad15a Check that types passed to PHYSFS_read are POD
More is needed to trap some misuses, but those traps flag existing code.
2014-06-22 18:52:00 +00:00
Kp e6a691c5c7 Check that types passed to PHYSFS_write are POD
More is needed to trap some misuses, but those traps flag existing code.
2014-06-22 03:54:35 +00:00
Kp f6631ce742 Unpack various structures
Prohibit conversion to void* to avoid accidental use with memcpy
2014-06-21 23:56:27 +00:00
Kp 78143eb045 Read walls carefully 2014-06-21 23:56:27 +00:00