summaryrefslogtreecommitdiff
path: root/src/process.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/process.c')
-rw-r--r--src/process.c30
1 files changed, 25 insertions, 5 deletions
diff --git a/src/process.c b/src/process.c
index 70e59f3..d86c62c 100644
--- a/src/process.c
+++ b/src/process.c
@@ -908,12 +908,19 @@ int ilen;
if (slen)
DoProcess(fore, &ibuf, &slen, 0);
if (--ilen == 0)
- D_ESCseen = ktab;
+ {
+ D_ESCseen = ktab;
+ WindowChanged(fore, 'E');
+ }
}
if (ilen <= 0)
return;
ktabp = D_ESCseen ? D_ESCseen : ktab;
- D_ESCseen = 0;
+ if (D_ESCseen)
+ {
+ D_ESCseen = 0;
+ WindowChanged(fore, 'E');
+ }
ch = (unsigned char)*s;
/*
@@ -1863,10 +1870,18 @@ int key;
}
if (D_ESCseen != ktab || ktabp != ktab)
{
- D_ESCseen = ktabp;
+ if (D_ESCseen != ktabp)
+ {
+ D_ESCseen = ktabp;
+ WindowChanged(fore, 'E');
+ }
break;
}
- D_ESCseen = 0;
+ if (D_ESCseen)
+ {
+ D_ESCseen = 0;
+ WindowChanged(fore, 'E');
+ }
}
/* FALLTHROUGH */
case RC_OTHER:
@@ -6470,6 +6485,7 @@ int i;
if (act->nr != RC_ILLEGAL)
{
D_ESCseen = 0;
+ WindowChanged(fore, 'E');
DoAction(act, i + 256);
return 0;
}
@@ -6495,7 +6511,11 @@ int i;
if (discard && (!act || act->nr != RC_COMMAND))
{
- D_ESCseen = 0;
+ if (D_ESCseen)
+ {
+ D_ESCseen = 0;
+ WindowChanged(fore, 'E');
+ }
return 0;
}
D_mapdefault = 0;