alternative to display_inventory for window-port

Several window ports that support perm_invent were
using a call back to the core display_inventory()
function.

While calling from the window port back to core functions
is arguably not ideal in the first place, it was recently
brought to light that code NetHack-3.7 code changes to
display_inventory() actually caused it to stop repopulating
the perm_invent window as intended under certain circumstances.

For now, provide an alternative function, repopulate_perminvent(),
that hopefullshould still work the way it did previously.

There will likely be some additional changes after this to
further improve things, at some point.

For now though, this
Resolves #1454
This commit is contained in:
nhmall
2025-11-08 14:26:07 -05:00
parent 6fa324d52a
commit d5658018ac
8 changed files with 21 additions and 9 deletions
+1 -1
View File
@@ -1295,7 +1295,7 @@ X11_update_inventory(int arg)
if (program_state.in_moveloop || program_state.gameover) {
updated_inventory = 1; /* hack to avoid mapping&raising window */
if (!arg) {
(void) display_inventory((char *) 0, FALSE);
repopulate_perminvent();
} else {
x11_scroll_perminv(arg);
}