Subject: bug#30079: 26.0.90; comint commands killing pending input

From: [email-masked] (Charles A. Roelli)
Date: Thu, 11 Jan 2018 21:37:07 +0100

The following four commands all claim to "kill the pending input",
which they don't actually seem to do.  Should the documentation or
implementation be changed?

(defun comint-interrupt-subjob ()
  "Interrupt the current subjob.
This command also kills the pending input
between the process mark and point."
  (interactive)
  (comint-skip-input)
  (interrupt-process nil comint-ptyp)
  ;; (process-send-string nil "\n")
  )

(defun comint-kill-subjob ()
  "Send kill signal to the current subjob.
This command also kills the pending input
between the process mark and point."
  (interactive)
  (comint-skip-input)
  (kill-process nil comint-ptyp))

(defun comint-quit-subjob ()
  "Send quit signal to the current subjob.
This command also kills the pending input
between the process mark and point."
  (interactive)
  (comint-skip-input)
  (quit-process nil comint-ptyp))

(defun comint-stop-subjob ()
  "Stop the current subjob.
This command also kills the pending input
between the process mark and point.

WARNING: if there is no current subjob, you can end up suspending
the top-level process running in the buffer.  If you accidentally do
this, use \\[comint-continue-subjob] to resume the process.  (This
is not a problem with most shells, since they ignore this signal.)"
  (interactive)
  (comint-skip-input)
  (stop-process nil comint-ptyp))