From a78e08d0c5ec2b1c3e3079d1a60cc6d7825832a5 Mon Sep 17 00:00:00 2001 From: cohrs Date: Wed, 21 Aug 2002 16:57:21 +0000 Subject: [PATCH] B08020 - partial fix for D$ behavior When GOLDOBJ is defined, dropping partial amounts of gold using the D command would not work because gold currently has the same inventory letter as the coin group accelerator. In this case, the group accelerator should not be used, since it confuses counts. tty and X11 ports are fixed. The tty change should fix the Windows console version as well (untested). --- win/X11/winmenu.c | 5 ++++- win/tty/wintty.c | 5 ++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/win/X11/winmenu.c b/win/X11/winmenu.c index d6f80e94b..0d2640f06 100644 --- a/win/X11/winmenu.c +++ b/win/X11/winmenu.c @@ -713,7 +713,10 @@ X11_select_menu(window, how, menu_list) for (i = 0; i < SIZE(gcnt); i++) gcnt[i] = 0; for (n = 0, curr = menu_info->new_menu.base; curr; curr = curr->next) - if (curr->gselector) ++n, ++gcnt[GSELIDX(curr->gselector)]; + if (curr->gselector && curr->gselector != curr->selector) { + ++n; + ++gcnt[GSELIDX(curr->gselector)]; + } if (n > 0) /* at least one group accelerator found */ for (ap = gacc, curr = menu_info->new_menu.base; diff --git a/win/tty/wintty.c b/win/tty/wintty.c index 560f9abc8..a0a064a09 100644 --- a/win/tty/wintty.c +++ b/win/tty/wintty.c @@ -1156,7 +1156,10 @@ struct WinDesc *cw; for (i = 0; i < SIZE(gcnt); i++) gcnt[i] = 0; for (n = 0, curr = cw->mlist; curr; curr = curr->next) - if (curr->gselector) ++n, ++gcnt[GSELIDX(curr->gselector)]; + if (curr->gselector && curr->gselector != curr->selector) { + ++n; + ++gcnt[GSELIDX(curr->gselector)]; + } if (n > 0) /* at least one group accelerator found */ for (rp = gacc, curr = cw->mlist; curr; curr = curr->next)