Commit graph

78 commits

Author SHA1 Message Date
Kp f900d4a5ee Remove RAIIdmem::operator pointer
Mac OS X defines uint_fast32_t to unsigned int, causing ambiguous
overloads between RAIIdmem::operator[](std::size_t) and
RAIIdmem::operator[](int).  Adding a disambiguating overload for OS X
breaks Windows.  Remove operator pointer and operator[].  Rely on the
inherited operator[] for indexing.  Require users to call ->get() to
convert to a simple pointer.

First btb ambiguity reported: https://github.com/dxx-rebirth/dxx-rebirth/pull/34
Second btb ambiguity reported: https://github.com/dxx-rebirth/dxx-rebirth/pull/43
2015-02-17 03:52:59 +00:00
Kp 99a4a0ed62 Capture range_for by-value temporaries as const
Modifying a by-value temporary does not affect the underlying container,
so modifying it is almost always a bug.  Require use of a by-reference
capture when modification is desired.

sed -i -e 's/range_for\s*(\s*\(const\s\+\)\?auto\s\+\([[:alpha:]_]\)/range_for (const auto \2/g'
2015-02-05 03:03:49 +00:00
Kp ff4a0ccd70 Fix RAIIdmem array usage
Some RAIIdmem instances managed a T[], but were declared to manage a T.
2015-01-28 03:42:53 +00:00
Kp fa73ca8a17 Pass gr_remap_bitmap_good arg by & 2015-01-25 05:32:45 +00:00
Kp fa10e51999 Add helper nm_item_text 2015-01-18 01:58:31 +00:00
Kp 5eb0c0cdf9 Record state_callback choice directly 2015-01-17 18:31:42 +00:00
Kp f7815810e8 Use RAIIPHYSFS_File to manage PHYSFS_File
Fixes a few leaks on error paths.
2015-01-17 18:31:42 +00:00
Kp 68d705a85a Use bool conversion to test PHYSFS_File pointer 2015-01-17 18:31:42 +00:00
Kp d5d416c62c Use ntstring for Netgame.mission_name 2015-01-03 23:44:32 +00:00
Kp 030a811661 Pass nullptr for Descent 1 state_save_all filename_override 2014-12-30 02:09:23 +00:00
Kp ac1340e3c9 Use ntstring for mission_name 2014-12-22 04:35:48 +00:00
Kp bf97634b27 Hide marker _ when buffer full 2014-12-22 04:35:48 +00:00
Kp 9ffd958d3d Create window_rendered_data locally 2014-12-18 04:12:38 +00:00
Kp 7c98dea8be Pass render_frame arg by & 2014-12-13 04:11:21 +00:00
Kp 355df375a0 Pass gr_bitmap arg as & 2014-12-02 03:35:01 +00:00
Kp 5eddc2c197 Make bitmap bm_data const where easy 2014-12-02 03:24:38 +00:00
Kp 166f15617d Pass ogl_ubitmapm_cs arg by & 2014-11-30 22:09:18 +00:00
Kp 06b384e349 Pass scale_bitmap arg by & 2014-11-30 22:09:17 +00:00
Kp 4ad784028b Pass scale_bitmap points in array<grs_point, 3> 2014-11-21 03:34:50 +00:00
Kp a17cf6f808 Avoid slicing into objnum_t local 2014-11-20 03:00:41 +00:00
Kp 18e4ca1b2c Fix SDL build after for propagation 2014-11-11 04:21:57 +00:00
Kp a5a848f6cd Use exchange when restoring state 2014-11-04 01:06:17 +00:00
Kp 6d61198130 Pass compute_segment_center vector by & 2014-10-30 03:32:51 +00:00
Kp 53aa70cecb Use vsegptridx_t 2014-10-28 03:08:51 +00:00
Kp 7f648c0f5f Wrap segment iteration idiom 2014-10-12 23:10:05 +00:00
Kp 157b4317c8 Combine Station iteration loops 2014-10-12 23:07:12 +00:00
Kp fb641b3250 Wrap object iteration idiom 2014-10-12 23:05:46 +00:00
zico 737b66fb96 Fixed multi_all_players_alive(), making sure player is playing and not a ghost; Fixed comparison of callsign_t checks in state.cpp; Added additional check for player status before saving game in case things chenged while host decides upon savegame 2014-10-10 13:20:48 +02:00
Kp a8f853aa7a Pass d_event arg by const& 2014-10-04 22:36:13 +00:00
Kp 3714c0c645 Use new serializer for writing segment side wall/tmap 2014-10-04 17:53:14 +00:00
Kp e6b9f3f923 Use typedef for player number 2014-09-21 22:10:12 +00:00
Kp e22923e004 Use unique_ptr for grs_canvas 2014-09-17 02:45:12 +00:00
Kp 5f8ede8d8f Remove state_save_old_game
Saving old player structure is broken since d9e2337 switched to saving
the pointer to sg_player instead of the value of sg_player.  No one
reported it in 6 years, so remove it.
2014-09-17 02:45:02 +00:00
Kp b95759aecc Propagate use of objptridx 2014-08-23 23:53:56 +00:00
Kp 66cb80c343 Propagate use of objptridx 2014-08-17 20:31:18 +00:00
Kp 125d9257be Use special type names for segment/object numbers 2014-08-13 02:57:12 +00:00
Kp 553f17a3be Initialize MarkerObject properly 2014-08-05 03:10:04 +00:00
Kp 323e796cd0 Use unique_ptr to manage grs_bitmap 2014-07-22 23:48:24 +00:00
Kp bd1c6d8c5d Reduce header includes of physfsx.h 2014-07-22 23:48:23 +00:00
Kp 44d1924e96 Use special type for player callsign 2014-07-05 19:20:56 +00:00
Kp c4b31f875f Use array<> for MarkerMessage 2014-06-22 18:53:42 +00:00
Kp 78143eb045 Read walls carefully 2014-06-21 23:56:27 +00:00
Kp 993f778e61 Write active_door carefully 2014-06-20 02:59:53 +00:00
Kp 5af9e8d5b2 Use array<> for ActiveDoors 2014-06-20 02:59:53 +00:00
Kp 2e95d8c0a8 Use array<> for Walls 2014-06-20 02:59:53 +00:00
Kp 176525cf71 Read cloaking_wall structures carefully 2014-06-20 02:59:53 +00:00
Kp 0ef949ab9e Use array<> for CloakingWalls 2014-06-20 02:59:53 +00:00
Kp d3ecca360c Read matcen_info structures carefully 2014-06-20 02:59:53 +00:00
Kp 2d26de003a Read trigger structures carefully 2014-06-20 02:59:53 +00:00
Kp 8cc3e2c9e9 Use array<> for Triggers 2014-06-20 02:59:53 +00:00