common/friend.c, common/exp.c, common/button.c, common/object.c, common/utils.c:
Fix some bad format strings for LOG().
15 lines of code changed in 6 files:
common/map.c: Based on profiling of charm monster on a large map with Chinese
dragons, optimise get_map_flags() a bit by avoiding a call to out_of_map(),
get_map_from_coord() performs the needed checks and we need to call it anyway.
Also fix typos in the documentation for get_map_from_coord().
17 lines of code changed in 2 files:
server/attack.c: Fix crash bug introduced in r11584 (Fix for bug 1922771: xp non
zero in meditation). Bug triggered by charming chinese dragons.
5 lines of code changed in 2 files:
Work in progress skill rebalance code. This should not affect play in any
way - while it introduces some new skills, those skills are not available
right now (players need to choose class that doesn't exist).
---
doc/Developers/spells: Fix some typos, add info on elemental shield.
include/skills.h: Add new magic skills. Update defines related to that.
Change terminator of unarmed_skills[] to 0, so type is defined as
unsigned so -1 doesn't work.
include/spells.h: Add new spell type - elemental shield.
server/player.c: Don't remove spell objects from new characters - this
makes it possible to give starting characters set of spells.
This shouldn't make any difference - if characters have spells they
shouldn't, this suggests an issue with treasurelists.
server/skill_util.c: Modify find_skill_by_name() to take comma separated
list of skill names. This is used for common spells to all spell
casting skills (something like detect magic) - don't want 4 versions
skill for something basic. Also add handling for new skills.
server/skills.c: Add note about problems of raising monsters Wis on
failed steal attempt. No actual code change.
server/spell_effect.c: Update for auras that provide resistances.
server/spell_util.c: Add handling for elemental shield spell.
--
MSW 2009-03-02
189 lines of code changed in 9 files:
Fix for bug 1830750: Buffer overflow with stat depletion via rabies
(note it wasn't an actual buffer overflow by integer overflow). Fix was to
modify check_stat_bounds() to take parameters for valid range, and add check
for it for the disease a well as temporary calculations in fix_object.
---
common/living.c: Modify check_stat_bounds() as described above. Update
existing calls and add new call in fix_object()
include/libproto.h: Update with no prototype.
server/disease.c: Update disease function to use get_attr_value/
set_attr_value. Add call to check_stat_bounds to make sure disease
stats are within range.
server/player.c: Update calls to check_stat_bounds()
MSW 2009-03-02
50 lines of code changed in 5 files:
test/toolkit/toolkit_common.c, test/include/toolkit_common.h: Fix a lot of
compiler warnings in the unit tests by adding a missing prototype to a header
and correcting another prototype.
server/c_misc.c: Fix trivially player triggered uninitialised read in the
language command.
common/object.c: Use "%s" to LOG() when dumping objects instead of passing
the dump as format string. Fix some compile warnings about variable shadowing.
26 lines of code changed in 6 files:
common/anim.c, Use "%s" to LOG() when dumping objects instead of passing
the dump as format string.
common/image.c: Fix LOG() with too formatstring/parameter mismatch.
common/init.c: Fix a compiler warning when using MEMORY_DEBUG, fix an
uninitialised read if tod data file exists but is invalid (default to sane
value instead, as is done if the file doesn't exist at all).
common/map.c: Fix a potential uninitialised read.
24 lines of code changed in 5 files: