diff --git a/src/invent.c b/src/invent.c index a2e99233e..2282cfdbf 100644 --- a/src/invent.c +++ b/src/invent.c @@ -5232,7 +5232,7 @@ let_to_name(char let, boolean unpaid, boolean showsym) else if ((pos = strchr(oth_symbols, let)) != 0) class_name = oth_names[pos - oth_symbols]; else - class_name = names[0]; + class_name = names[ILLOBJ_CLASS]; len = Strlen(class_name) + (unpaid ? sizeof "unpaid_" : sizeof "") + (oclass ? (Strlen(ocsymfmt) + invbuf_sympadding) : 0); diff --git a/win/curses/cursdial.c b/win/curses/cursdial.c index a2c52d57e..e0f25aa12 100644 --- a/win/curses/cursdial.c +++ b/win/curses/cursdial.c @@ -323,7 +323,8 @@ curses_character_input_dialog( } break; } else if ((answer == '\n') || (answer == '\r') || (answer == ' ')) { - if ((choices != NULL) && (def != '\0')) { + if ((choices != NULL) + && ((def != '\0') || !strchr(choices, answer))) { answer = def; } break;