[release] v1.0.1
After the merge into OpenGothic a couple other issues were uncovered. This patch addresses these issues and contain a set of compatibility improvements and some performance upgrades. These are the changes made since v1.0.0:
Bugfixes
- [d9357f6] Previously, only the non-
const
version ofscript::find_symbol_by_name
was case-insensitive. Now
theconst
version is too. - [7d87485] Non-free waypoints are now correctly included in the
way_net::waypoint
lookup - [c8c2294] Return
null
-instances from the default VM external set byvm::register_default_external
if needed - [ce320ad] If a default external is set the stack guard in the
opcode::be
branch ofvm::exec
is now inhibited
preventing stack corruption - [272c2a3] The stack guard for the
opcode::bl
instruction invm::exec
usedsym
as uninitialized which caused VM
crashes if any script function was overridden - [612b078] Fix incorrect usage of
std::isspace
in multiple locations which could cause crashes using compilers which
treatchar
as signed
Performance
- [88c43eb] Improve
archive_reader::read_object_begin
performance by up to 30% by usingsscanf
instead
ofstd::stringstream
internally