diff options
author | j-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573> | 2009-02-28 12:52:46 +0000 |
---|---|---|
committer | j-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573> | 2009-02-28 12:52:46 +0000 |
commit | 431848df80d80f851b7a2e8ac36247ef1c771543 (patch) | |
tree | 9777635704a7ba81f7a4d4815a7db0194573e1d6 /crawl-ref/source | |
parent | 7c77ddbf2a9f0c56d9832e11780cc8449da2d0bb (diff) | |
download | crawl-ref-431848df80d80f851b7a2e8ac36247ef1c771543.tar.gz crawl-ref-431848df80d80f851b7a2e8ac36247ef1c771543.zip |
Call flush_prev_message() before getch(), cancelable_get_line() and
mpr_formatted_output(). Fixes 2647846.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@9275 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source')
-rw-r--r-- | crawl-ref/source/cio.cc | 2 | ||||
-rw-r--r-- | crawl-ref/source/item_use.cc | 2 | ||||
-rw-r--r-- | crawl-ref/source/items.cc | 6 | ||||
-rw-r--r-- | crawl-ref/source/macro.cc | 1 | ||||
-rw-r--r-- | crawl-ref/source/message.cc | 10 |
5 files changed, 10 insertions, 11 deletions
diff --git a/crawl-ref/source/cio.cc b/crawl-ref/source/cio.cc index f8ac4bb957..308aa3eed3 100644 --- a/crawl-ref/source/cio.cc +++ b/crawl-ref/source/cio.cc @@ -12,6 +12,7 @@ REVISION("$Rev$"); #include "cio.h" #include "externs.h" #include "macro.h" +#include "message.h" #include "state.h" #include <queue> @@ -280,6 +281,7 @@ int wrapcprintf( int wrapcol, const char *s, ... ) int cancelable_get_line( char *buf, int len, int maxcol, input_history *mh, int (*keyproc)(int &ch) ) { + flush_prev_message(); line_reader reader(buf, len, maxcol); reader.set_input_history(mh); reader.set_keyproc(keyproc); diff --git a/crawl-ref/source/item_use.cc b/crawl-ref/source/item_use.cc index aead71c75a..b9f478cce9 100644 --- a/crawl-ref/source/item_use.cc +++ b/crawl-ref/source/item_use.cc @@ -3331,6 +3331,8 @@ static int prompt_ring_to_remove(int new_ring) mprf(" %s", left.name(DESC_INVENTORY).c_str()); mprf(" %s", right.name(DESC_INVENTORY).c_str()); +// mprf(MSGCH_PROMPT_OUTPUT, " %s", left.name(DESC_INVENTORY).c_str()); +// mprf(MSGCH_PROMPT_OUTPUT, " %s", right.name(DESC_INVENTORY).c_str()); int c; do diff --git a/crawl-ref/source/items.cc b/crawl-ref/source/items.cc index 32fd5bb188..c91e3bd8d3 100644 --- a/crawl-ref/source/items.cc +++ b/crawl-ref/source/items.cc @@ -742,7 +742,7 @@ void item_check(bool verbose) if (static_cast<int>(items.size()) >= Options.item_stack_summary_minimum) { std::vector<unsigned short int> item_chars; - for ( unsigned int i = 0; i < items.size() && i < 50; ++i ) + for (unsigned int i = 0; i < items.size() && i < 50; ++i) { unsigned glyph_char; unsigned short glyph_col; @@ -754,10 +754,10 @@ void item_check(bool verbose) std::string out_string = "Items here: "; int cur_state = -1; - for ( unsigned int i = 0; i < item_chars.size(); ++i ) + for (unsigned int i = 0; i < item_chars.size(); ++i) { const int specialness = 10 - (item_chars[i] % 0x100); - if ( specialness != cur_state ) + if (specialness != cur_state) { switch (specialness) { diff --git a/crawl-ref/source/macro.cc b/crawl-ref/source/macro.cc index c81dd4330c..a2cb695cb4 100644 --- a/crawl-ref/source/macro.cc +++ b/crawl-ref/source/macro.cc @@ -663,6 +663,7 @@ static keyseq getch_mul( int (*rgetch)() = NULL ) */ int getchm( int (*rgetch)() ) { + flush_prev_message(); return getchm( KC_DEFAULT, rgetch ); } diff --git a/crawl-ref/source/message.cc b/crawl-ref/source/message.cc index 4521762ad4..4e3f805b6f 100644 --- a/crawl-ref/source/message.cc +++ b/crawl-ref/source/message.cc @@ -759,14 +759,7 @@ void flush_prev_message() { if (prev_message.text.empty()) return; -/* - if (prev_message.repeats > 1) - { - snprintf(info, INFO_SIZE, "%s (x%d)", - prev_message.text.c_str(), prev_message.repeats); - prev_message.text = info; - } -*/ + base_mpr(prev_message.text.c_str(), prev_message.channel, prev_message.param, prev_message.colour, prev_message.repeats, false); @@ -852,6 +845,7 @@ static void base_mpr(const char *inf, msg_channel_type channel, int param, static void mpr_formatted_output(formatted_string fs, int colour) { + flush_prev_message(); int curcol = Options.delay_message_clear ? 2 : 1; if (need_prefix) |