Mercurial > vim
changeset 1691:4842e7421b52 v7.2b.024
updated for version 7.2b-024
author | vimboss |
---|---|
date | Tue, 29 Jul 2008 10:22:12 +0000 |
parents | c6b06a4a8f92 |
children | c8c47cc9dab1 |
files | src/term.c src/version.c |
diffstat | 2 files changed, 34 insertions(+), 15 deletions(-) [+] |
line wrap: on
line diff
--- a/src/term.c +++ b/src/term.c @@ -3196,11 +3196,17 @@ settmode(tmode) if (tmode != TMODE_COOK || cur_tmode != TMODE_COOK) { #ifdef FEAT_TERMRESPONSE - /* May need to check for T_CRV response and termcodes, it doesn't - * work in Cooked mode, an external program may get them. */ - if (tmode != TMODE_RAW && crv_status == CRV_SENT) - (void)vpeekc_nomap(); - check_for_codes_from_term(); +# ifdef FEAT_GUI + if (!gui.in_use && !gui.starting) +# endif + { + /* May need to check for T_CRV response and termcodes, it + * doesn't work in Cooked mode, an external program may get + * them. */ + if (tmode != TMODE_RAW && crv_status == CRV_SENT) + (void)vpeekc_nomap(); + check_for_codes_from_term(); + } #endif #ifdef FEAT_MOUSE_TTY if (tmode != TMODE_RAW) @@ -3232,10 +3238,16 @@ starttermcap() termcap_active = TRUE; screen_start(); /* don't know where cursor is now */ #ifdef FEAT_TERMRESPONSE - may_req_termresponse(); - /* Immediately check for a response. If t_Co changes, we don't want - * to redraw with wrong colors first. */ - check_for_codes_from_term(); +# ifdef FEAT_GUI + if (!gui.in_use && !gui.starting) +# endif + { + may_req_termresponse(); + /* Immediately check for a response. If t_Co changes, we don't + * want to redraw with wrong colors first. */ + if (crv_status != CRV_GET) + check_for_codes_from_term(); + } #endif } } @@ -3248,12 +3260,17 @@ stoptermcap() if (termcap_active) { #ifdef FEAT_TERMRESPONSE - /* May need to check for T_CRV response. */ - if (crv_status == CRV_SENT) - (void)vpeekc_nomap(); - /* Check for termcodes first, otherwise an external program may get - * them. */ - check_for_codes_from_term(); +# ifdef FEAT_GUI + if (!gui.in_use && !gui.starting) +# endif + { + /* May need to check for T_CRV response. */ + if (crv_status == CRV_SENT) + (void)vpeekc_nomap(); + /* Check for termcodes first, otherwise an external program may + * get them. */ + check_for_codes_from_term(); + } #endif out_str(T_KE); /* stop "keypad transmit" mode */ out_flush();