]> granicus.if.org Git - nethack/commit
'O' vs bouldersym
authorPatR <rankin@nethack.org>
Sun, 30 Dec 2018 23:30:38 +0000 (15:30 -0800)
committerPatR <rankin@nethack.org>
Sun, 30 Dec 2018 23:30:38 +0000 (15:30 -0800)
commitda40f55a9ff3e264488c11a67e14018e90676f09
treee807757878902293cb105d32170cb10172dd6e02
parent83e8033f72b610b154d6b8a2eacc51baf2f3676c
'O' vs bouldersym

The 'O' handling for bouldersym was updating the display value for
boulder even if the value had been rejected, and if it still had the
default of '\0', the map would end up with <NUL> characters.  (When
examined via '//' or ';', those matched dummy monster class #0 and
led to the impossible "Alphabet soup: 'an("")'" that was suppressed
yesterday.)

Attempting to set bouldersym to ^@ or \0 would also be rejected as
duplicating a monster symbol.  That is now accepted and used to reset
the boulder symbol to default.  However, other control characters are
also accepted--not due to this patch, they already are, and from a
config file in addition to via 'O'--so bouldersym can still disrupt
the map.  But that's no different from putting control characters
into a symbol set or setting them from config file via S_foo:^C.
doc/fixes36.2
include/display.h
src/drawing.c
src/options.c