perm_invent initialization fix

Using
|OPTIONS=windowtype:Foo
|OPTIONS=perm_invent
or
|NETHACKOPTIONS='perm_invent,windowtype:Foo'
would enable perm_invent if interface "Foo" supported it, but using
|OPTIONS=perm_invent
|OPTIONS=windowtype:Foo
or
|NETHACKOPTIONS='windowtype:Foo,perm_invent'
or combined
|OPTIONS=perm_invent
|NETHACKOPTIONS='windowtype:Foo'
would only enable perm_invent if both "Foo" and the default interface
supported it.

Using '--windowtyp:Foo' on the command line didn't have this issue
because command line interface selection replaces the default one
before configuration file and environment options are processed.
This commit is contained in:
PatR
2024-03-12 11:19:35 -07:00
parent f9f9641fd4
commit 6ca54852ee
2 changed files with 24 additions and 6 deletions

View File

@@ -1887,6 +1887,9 @@ OPTIONS=symset:blank and symset:plain didn't load the specified symbols if
for OPTIONS=symset:blank, S_engroom (engraving on a room floor spot) and
S_engrcorr (engraving on a corridor spot) retained their default
symbols ('`' and '#', respectively) instead of switching to space
setting perm_invent in RC file before setting windowtype (whether later in
that file or via NETHACKOPTIONS) could result in it staying False
depending upon whether the default windowtype supported it
Fixes to 3.7.0-x Platform and/or Interface Problems Exposed Via git Repository