Download raw body.
Fix for vi editing mode in sftp(1) (PING)
On Tue, Jan 20, 2026 at 12:42:42PM +0100, Walter Alejandro Iglesias wrote: > --- sftp.c 13 Oct 2025 00:54:29 -0000 1.247 > +++ sftp.c 20 Jan 2026 11:06:05 -0000 > @@ -2204,6 +2204,7 @@ interactive_loop(struct sftp_conn *conn, > char *remote_path; > char *dir = NULL, *startdir = NULL; > char cmd[2048]; > + const char *editor = "emacs"; > int err, interactive; > EditLine *el = NULL; > History *hl = NULL; > @@ -2220,7 +2221,7 @@ interactive_loop(struct sftp_conn *conn, > el_set(el, EL_HIST, history, hl); > > el_set(el, EL_PROMPT, prompt); > - el_set(el, EL_EDITOR, "emacs"); > + el_set(el, EL_EDITOR, editor); > el_set(el, EL_TERMINAL, NULL); > el_set(el, EL_SIGNAL, 1); > el_source(el, NULL); The initial assignment of "emacs" to editor and then using it instead of the fixed string in el_set() does nothing useful from a technical point of view. Unless you think it improves code readability, by moving the string to the top of the function declaration, then Stuart's version of the patch is more correct. (And in general, for longer and more complex code where it might be useful, improving readability in that way is usually better done with a define rather than a variable assignment.)
Fix for vi editing mode in sftp(1) (PING)