Commit graph

4724 commits

Author SHA1 Message Date
Kp 5d801ce386 Add #error diagnostics to compiler.h 2013-12-21 01:54:38 +00:00
Kp c2f6e9f999 Remove obsolete setjmp/longjmp 2013-12-21 01:40:56 +00:00
zico 0e3e020323 merge 2013-12-20 09:22:33 +01:00
zico 9efd5ecaef Restrict bright players feature to OBJ_PLAYER 2013-12-20 09:21:42 +01:00
Kp 1ec8057d74 Fix at-exit memory leak in digi_mixer 2013-12-20 04:41:46 +00:00
Kp fbf1f8a658 Annotate mem_malloc/calloc/realloc as __attribute__((alloc_size)) 2013-12-20 03:33:32 +00:00
Kp 737fe73dd7 Annotate mem_malloc/mem_calloc as __attribute__((malloc)) 2013-12-20 03:24:39 +00:00
Kp cf49fd0c98 Fix memory leak in audio conversion 2013-12-20 03:24:09 +00:00
Kp f817a7e603 Fix array understep when mapping exit tunnel 2013-12-20 03:21:40 +00:00
Kp 3a8ca07132 Step powerup frame number carefully
Avoid relying on integer underflow when checking for moving the current
frame number outside the range of frames.
2013-12-20 03:20:05 +00:00
Kp e4b091dd38 Make ogl_pal a ubyte (*)[256*3] to improve checking 2013-12-20 03:19:40 +00:00
Kp 3bf16e57dc Remove PHYSFSX_gets, PHYSFSX_readString
They do not check for a buffer overflow.
2013-12-20 03:16:46 +00:00
Kp 4e7e3fa0c8 Remove get_parm_value use for type=anarchy mission loader 2013-12-20 03:16:32 +00:00
Kp 86a88bedbd Use enum for CockpitMode
This makes the debugger output nicer.
2013-12-20 03:14:16 +00:00
Kp 8340463ef2 Warn when objects are deleted due to invalid segment 2013-12-20 03:13:21 +00:00
Kp d2a2103cc2 Combine MULTI_PLAYER_EXPLODE and MULTI_PLAYER_DROP
Add a selector byte and use a common primary command code.
2013-12-20 03:11:23 +00:00
Kp 3ca5b4af47 Inline multi_send_quit 2013-12-20 03:11:06 +00:00
Kp c561c3d514 Move multi_send_data_direct type into template parameter
Optimizing compilers may now delete the size check.
2013-12-20 03:08:19 +00:00
Kp ad90c245b6 Improve interaction of Del+F with normal map usage
Refactor edge computation into helper.

Let Automap_visited always be exactly what the player mapped normally.
This allows reversing Del+F.
2013-12-20 03:06:59 +00:00
Kp 61ac9c31f3 Simplify automap key powerup color setup 2013-12-20 03:02:25 +00:00
Kp 1b79e5648c Simplify kmatrix escape handling 2013-12-20 03:01:36 +00:00
Kp f0bae2c8cd Add EVENT_WINDOW_CREATED to centralize window init/deinit logic 2013-12-20 02:51:24 +00:00
Kp 985972186f Use separate type for ai_static_rw in Descent, too 2013-12-19 15:11:41 +00:00
zico 35266309d0 Made version mismatch screen spill out some explanatory information about Multi protocol version 2013-12-19 14:03:00 +01:00
zico 5f005baa3b Added MULTI_EFFECT_BLOWUP to remotely blast switches connected to triggers, ensuring sync and preventing misguided (i.e. delayed) player fire accidentially make puzzles or game progress impossible 2013-12-19 13:48:33 +01:00
Kp d2c2dfe95c Make Segments[] a C++ array 2013-12-19 03:31:24 +00:00
Kp 96bc008c72 Fix audio file matching broken by cb4fd7c1b4 2013-12-19 03:31:24 +00:00
Kp a265792497 Remove DPMI-based DO_MEMINFO 2013-12-19 03:31:24 +00:00
Kp 03821fab0d Rely on libc strdup if DEBUG_MEMORY_ALLOCATIONS is unset
If !DEBUG_MEMORY_ALLOCATIONS, our strdup is not special.  Rely on the
compiler one, which might be.
2013-12-19 03:31:24 +00:00
Kp 022a5f8870 Fix array overstep in collide_weapon_and_wall
This is the same mistake as fixed in ca4f9e8b30, but in a different
function.
2013-12-19 03:31:24 +00:00
Kp 8208ab9e53 Fix array underread when no glow is defined
ASan reports an access to array[-1].
2013-12-19 03:31:24 +00:00
Kp aba6c2dfee Pass glow_values as array<> to retain size information 2013-12-19 03:31:24 +00:00
Kp a40c19f770 Fix con_puts buffer overread
ASan reports a 2K read from a small string literal.

Also, fix silly double copy in con_add_buffer_line and delete too-short
memset in con_add_buffer_line.
2013-12-19 03:31:24 +00:00
Kp 779d1b95db Defer freeing window until after EVENT_WINDOW_CLOSED 2013-12-19 03:11:56 +00:00
Kp 743893bd56 Assign per-type missile names in miniview 2013-12-18 05:01:00 +00:00
Kp 83f7427aad Convert vsprintf to vsnprintf 2013-12-18 05:00:36 +00:00
Kp 7c0204095e Simplify name setup in load_pig1 2013-12-18 05:00:20 +00:00
Kp 49bcd3bb64 Use D1 reactor times when emulating D1 2013-12-18 04:53:07 +00:00
Kp 0938e819e5 Advertise map-mode via overload of typing-mode
Tell other clients when map mode is active, for the same reason that
typing mode is advertised.
2013-12-18 04:51:46 +00:00
Kp 8c74708ad4 Improve layout of D2 powerup_info 2013-12-18 04:51:46 +00:00
Kp 76b4a6c57e Avoid memcpy on object 2013-12-18 04:51:46 +00:00
Kp 9776827a33 Make Objects[] a C++ array 2013-12-18 04:51:46 +00:00
Kp 7caf9bbcd4 Unify WALL_IS_DOORWAY
Both games used the same meaning, but called values by different names.
2013-12-18 04:51:46 +00:00
Kp 2f18c5037d Store group lists as countarray objects 2013-12-18 03:48:52 +00:00
Kp 8c649b677b Optimize group deletion 2013-12-18 03:46:50 +00:00
Kp 2d0c64ffb8 Fix generation of demo filename
Broken in cb4fd7c1b4 by removal of dot from DEMO_EXT.
2013-12-18 03:43:40 +00:00
Kp 7fe542abc3 Simplify SubtractFromGroup cleanup 2013-12-17 04:43:38 +00:00
Kp 3381e5de52 Simplify group exhaustion test in med_move_group 2013-12-17 04:03:35 +00:00
Kp e8de74b8bf Reject inappropriate printf usage 2013-12-17 04:03:35 +00:00
Kp 51e328e538 Use score_rputs instead of score_rprintf where possible 2013-12-17 04:03:35 +00:00