]> git.eshelyaron.com Git - emacs.git/commitdiff
(cvs-temp-buffer): Kill running process in displayed buffers.
authorStefan Monnier <monnier@iro.umontreal.ca>
Fri, 23 May 2003 19:31:02 +0000 (19:31 +0000)
committerStefan Monnier <monnier@iro.umontreal.ca>
Fri, 23 May 2003 19:31:02 +0000 (19:31 +0000)
(cvs-make-cvs-buffer): Fix up format of the header.

lisp/pcvs.el

index a15ecc5ccb8af84180813eebdd7c1f97ec3a4d23..1fd4d90d60b06f95849798bcf7138a43cc17b6c7 100644 (file)
@@ -369,7 +369,14 @@ from the current buffer."
     (let ((proc (get-buffer-process buf)))
       (when (and (not normal) (processp proc)
                 (memq (process-status proc) '(run stop)))
-       (error "Can not run two cvs processes simultaneously")))
+       (if cmd
+           ;; When CMD is specified, the buffer is normally shown to the
+           ;; user, so interrupting the process is not harmful.
+           ;; Use `delete-process' rather than `kill-process' otherwise
+           ;; the pending output of the process will still get inserted
+           ;; after we erase the buffer.
+           (delete-process proc)
+         (error "Can not run two cvs processes simultaneously"))))
 
     (if (not name) (kill-local-variable 'other-window-scroll-buffer)
       ;; Strangely, if no window is created, `display-buffer' ends up
@@ -454,7 +461,8 @@ If non-nil, NEW means to create a new buffer no matter what."
                       (concat "\nTag        : " (substring tag 1)))
                      ((string-match "\\`D" tag)
                       (concat "\nDate       : " (substring tag 1)))
-                     ("")))))
+                     ("\n"))))
+                "\n")
         (setq buffer-read-only t)
         (cvs-mode)
         (set (make-local-variable 'list-buffers-directory) buffer-name)