[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/vc-hgcmd c62c14e 33/87: Use process-send-eof for pty pr
From: |
Stefan Monnier |
Subject: |
[elpa] externals/vc-hgcmd c62c14e 33/87: Use process-send-eof for pty processes |
Date: |
Sat, 5 Jun 2021 16:11:41 -0400 (EDT) |
branch: externals/vc-hgcmd
commit c62c14e119685f542de9bef367f63ceda4f4a36f
Author: muffinmad <andreyk.mad@gmail.com>
Commit: muffinmad <andreyk.mad@gmail.com>
Use process-send-eof for pty processes
It was unescaped `\n` who caused troubles when using `process-send-eof` for
pty processes
---
vc-hgcmd.el | 22 +++++++++++++---------
1 file changed, 13 insertions(+), 9 deletions(-)
diff --git a/vc-hgcmd.el b/vc-hgcmd.el
index dbbb455..bd75391 100644
--- a/vc-hgcmd.el
+++ b/vc-hgcmd.el
@@ -5,7 +5,7 @@
;; Author: Andrii Kolomoiets <andreyk.mad@gmail.com>
;; Keywords: vc
;; URL: https://github.com/muffinmad/emacs-vc-hgcmd
-;; Package-Version: 1.3.3
+;; Package-Version: 1.3.4
;; Package-Requires: ((emacs "25.1"))
;; This file is NOT part of GNU Emacs.
@@ -227,7 +227,7 @@ Insert output to process buffer and check if amount of data
is enought to parse
(when callback
(if args (funcall callback args) (funcall
callback)))))
;; TODO: cmdserver clients must handle I and L
channels
- (t (error (format "unknown channel %c\n"
channel)))))))
+ (t (error (format "unknown channel %c"
channel)))))))
t))))))))
(defun vc-hgcmd--cmdserver-process-sentinel (process _event)
@@ -265,8 +265,6 @@ Insert output to process buffer and check if amount of data
is enought to parse
(while (and (process-live-p process) (not (vc-hgcmd--read-output)))
(accept-process-output process 0.1 nil t))
(when (process-live-p process)
- ;; send \n after command data so tty process can read data
- (process-send-string process "runcommand\n")
(set-process-filter process #'vc-hgcmd--cmdserver-process-filter)
(set-process-sentinel process
#'vc-hgcmd--cmdserver-process-sentinel)
process)))))))
@@ -343,8 +341,14 @@ Insert 'Running command' and display buffer text if
COMMAND"
(accept-process-output process 0.1 nil t))
(when (process-live-p process)
(setq vc-hgcmd--current-command cmd)
- ;; send \n after command data so tty process can read data
- (process-send-string process (concat
(vc-hgcmd--prepare-command-to-send (vc-hgcmd--command-command cmd)
(process-tty-name process)) "runcommand\n"))
+ (let ((tty (process-tty-name process)))
+ (process-send-string process
+ (concat "runcommand\n"
+ (vc-hgcmd--prepare-command-to-send
+ (vc-hgcmd--command-command cmd) tty)))
+ ;; send eof after command data so tty process can read data
+ (when tty
+ (process-send-eof process)))
(when (vc-hgcmd--command-wait cmd)
(while vc-hgcmd--current-command
(accept-process-output process 0.1 nil t)))
@@ -407,7 +411,7 @@ Insert 'Running command' and display buffer text if COMMAND"
(defun vc-hgcmd--branches ()
"Return branches list."
- (split-string (vc-hgcmd-command "branches" "-T" "{branch}\n") "\n"))
+ (split-string (vc-hgcmd-command "branches" "-T" "{branch}\\n") "\n"))
(defun vc-hgcmd--tags ()
"Return tags list."
@@ -503,7 +507,7 @@ Insert 'Running command' and display buffer text if COMMAND"
(defun vc-hgcmd-dir-extra-headers (_dir)
"Return summary command for DIR output as dir extra headers."
- (let* ((parents (vc-hgcmd-command "log" "-r" "p1()+p2()" "--template"
"{rev}:{node|short}\\0{branch}\\0{tags}\\0{desc|firstline}\n"))
+ (let* ((parents (vc-hgcmd-command "log" "-r" "p1()+p2()" "--template"
"{rev}:{node|short}\\0{branch}\\0{tags}\\0{desc|firstline}\\n"))
(result (when parents
(apply #'concat (mapcar #'vc-hgcmd--parent-info
(split-string parents "\n"))))))
(with-temp-buffer
@@ -813,7 +817,7 @@ Insert 'Running command' and display buffer text if COMMAND"
(defun vc-hgcmd--log-edit-default-message ()
"Return 'merged ...' if there are two parents."
- (let* ((parents (split-string (vc-hgcmd-command "log" "-r" "p1()+p2()"
"--template" "{node}\\0{branch}\n") "\n"))
+ (let* ((parents (split-string (vc-hgcmd-command "log" "-r" "p1()+p2()"
"--template" "{node}\\0{branch}\\n") "\n"))
(p1 (car parents))
(p2 (cadr parents)))
(when p2
- [elpa] externals/vc-hgcmd 0bfb041 04/87: Package-lint issues fixed, (continued)
- [elpa] externals/vc-hgcmd 0bfb041 04/87: Package-lint issues fixed, Stefan Monnier, 2021/06/05
- [elpa] externals/vc-hgcmd ca11232 08/87: fixed typos, Stefan Monnier, 2021/06/05
- [elpa] externals/vc-hgcmd 8951533 18/87: Notes about installing from melpa, Stefan Monnier, 2021/06/05
- [elpa] externals/vc-hgcmd c95696f 15/87: Graph log for branch or root log, Stefan Monnier, 2021/06/05
- [elpa] externals/vc-hgcmd f48b82b 26/87: Filename must be relative to vc root, Stefan Monnier, 2021/06/05
- [elpa] externals/vc-hgcmd e39d484 29/87: fail gracefully if hg executable is absent, Stefan Monnier, 2021/06/05
- [elpa] externals/vc-hgcmd aef3092 27/87: vc registered for symlinks fixed, Stefan Monnier, 2021/06/05
- [elpa] externals/vc-hgcmd e47e11b 28/87: don't pass relative file names to vc-state, Stefan Monnier, 2021/06/05
- [elpa] externals/vc-hgcmd 88452e2 30/87: indentation, Stefan Monnier, 2021/06/05
- [elpa] externals/vc-hgcmd 4556145 31/87: create hg process once, Stefan Monnier, 2021/06/05
- [elpa] externals/vc-hgcmd c62c14e 33/87: Use process-send-eof for pty processes,
Stefan Monnier <=
- [elpa] externals/vc-hgcmd 5416977 36/87: command callback must be called in output buffer, Stefan Monnier, 2021/06/05
- [elpa] externals/vc-hgcmd 088aaa4 37/87: lazy completion table on branch merge, Stefan Monnier, 2021/06/05
- [elpa] externals/vc-hgcmd 3e5782c 39/87: Handle unexpected output; Handle non-latin branch/file names, Stefan Monnier, 2021/06/05
- [elpa] externals/vc-hgcmd 261ef39 21/87: version 1.3.1, Stefan Monnier, 2021/06/05
- [elpa] externals/vc-hgcmd 39dddda 22/87: Use relative filename on check status, Stefan Monnier, 2021/06/05
- [elpa] externals/vc-hgcmd d9bc82c 09/87: fixed typo, Stefan Monnier, 2021/06/05
- [elpa] externals/vc-hgcmd c05d560 16/87: melpa-stable badge, Stefan Monnier, 2021/06/05
- [elpa] externals/vc-hgcmd 3b2d060 17/87: Show command output on command error, Stefan Monnier, 2021/06/05
- [elpa] externals/vc-hgcmd 876f7cb 20/87: Handle nil on reading parents, Stefan Monnier, 2021/06/05
- [elpa] externals/vc-hgcmd 15c2c27 23/87: Communication with tty process, Stefan Monnier, 2021/06/05