Leak introduced in b3d134a6b7 ("merged
physfs branch"), but this fix only applies after the conversion to RAII.
An equivalent change from SDL_FreeRW->SDL_RWclose is needed for pre-RAII
code.
Fixes: d0de0cf963 ("Use unique_ptr for SDL_RWops")
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
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'
Rework movie loading to fix loading built-in robot movies. The previous
code always ignored loading the last entry in the movie array, which was
blank until 18f6919b33. The last entry
was unused after d38a3d1362, so it was
removed, which caused the code to skip the robots entry.
Commit d38a3d1362 broke unloading add-on
movies by removing the strcpy which saved their name. Add code to save
the name to extra_robot_movie_mission and call it when switching
missions.
Reported by btb: https://github.com/dxx-rebirth/dxx-rebirth/pull/17