mirror of
https://git.tartarus.org/simon/putty.git
synced 2025-01-09 17:38:00 +00:00
363debc7f0
In protocols other than PROT_RAW, the new line editing system differed from the old one in not considering ^M or ^J (typed using the actual Ctrl key, so distinct from pressing Return) to mean "I've finished editing this line, please send it". This commit reinstates that behaviour. It turned out that a third-party tool (namely PuTTY Connection Manager), which automatically answers prompts for the user, was terminating them by sending ^J in place of the Return key. We don't know why (and it's now unmaintained), but it was. So this change should make that tool start working again. I exclude PROT_RAW above because in that protocol the line editing has much weirder handling for ^M and ^J, which lineedit replicated faithfully from the old code: either control character by itself is treated literally (displaying as "^M" or "^J" in the terminal), but if you type the two in sequence in that order, then the ^J deletes the ^M from the edit buffer and enters the line, so that the sequence CR LF acts as a newline overall. I haven't changed that behaviour here, but I have added a regression test of it to test_lineedit. |
||
---|---|---|
.. | ||
sclog | ||
agentmulti.py | ||
agenttest.py | ||
agenttestdata.py | ||
agenttestgen.py | ||
ca.py | ||
colours.txt | ||
cryptsuite.py | ||
desref.py | ||
display.txt | ||
dsa_nonce_recover.py | ||
eccref.py | ||
fuzzterm.c | ||
lattrs.txt | ||
list-accel.py | ||
mpu-check.pl | ||
numbertheory.py | ||
primegen.py | ||
scocols.txt | ||
ssh.py | ||
test_conf.c | ||
test_lineedit.c | ||
test_terminal.c | ||
testcrypt-enum.h | ||
testcrypt-func.h | ||
testcrypt.c | ||
testcrypt.py | ||
testsc.c | ||
testzlib.c | ||
utf8.txt | ||
vt100.txt | ||
windowchange.py |