From 01ecfffca144f8b8e42d9b846dd16440557c7e61 Mon Sep 17 00:00:00 2001 From: ennewalker Date: Fri, 9 May 2008 18:16:05 +0000 Subject: [1960394] Fixed crash when examining items from %. (Menu objects own their MenuEntry objects, so you can't destroy a Menu and then pass around MenuEntry pointers.) git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@4960 c06c8d41-db1a-0410-9941-cceddc491573 --- crawl-ref/source/output.cc | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/crawl-ref/source/output.cc b/crawl-ref/source/output.cc index 68dd12a5e0..3e41e383c7 100644 --- a/crawl-ref/source/output.cc +++ b/crawl-ref/source/output.cc @@ -1773,7 +1773,7 @@ static std::string _overview_screen_title() // new scrollable status overview screen, // including stats, mutations etc. -std::vector _get_overview_screen_results() +char _get_overview_screen_results() { bool calc_unid = false; formatted_scroller overview; @@ -1994,21 +1994,22 @@ std::vector _get_overview_screen_results() overview.add_text(" "); overview.add_text(_status_mut_abilities()); - return overview.show(); + + std::vector results = overview.show(); + return (results.size() > 0) ? results[0]->hotkeys[0] : 0; } void print_overview_screen() { while (true) { - std::vector results = _get_overview_screen_results(); - if (results.size() == 0) + char c = _get_overview_screen_results(); + if (!c) { redraw_screen(); break; } - const char c = results[0]->hotkeys[0]; item_def& item = you.inv[letter_to_index(c)]; describe_item(item, true); // loop around for another go. -- cgit v1.2.3-54-g00ecf