aboutsummaryrefslogtreecommitdiff
path: root/src/irc.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/irc.c')
-rw-r--r--src/irc.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/irc.c b/src/irc.c
index 8536d2c..91784b7 100644
--- a/src/irc.c
+++ b/src/irc.c
@@ -29,6 +29,7 @@ int msg_argcount;
char irc_away = 0;
char bell_type;
char hide_motd;
+char start_latch = 0;
static char msgbuf[MAX_MSG] = { 0 };
static char *msg; /* with source removed */
@@ -923,6 +924,9 @@ static void start_keystroke(void) {
i = cgetc();
+ start_latch = 0;
+ if(i == CH_ESC) return;
+
if(i >= '1' && i <= '7') {
s = i - '1';
if(s != scr_current) {
@@ -1013,7 +1017,7 @@ static void keystroke(void) {
txbuf_send_str("AWAY");
irc_away = 0;
}
- if(GTIA_READ.consol == 6) { /* start pressed */
+ if(GTIA_READ.consol == 6 || start_latch) { /* start pressed */
start_keystroke();
} else {
edbox_keystroke();