]> code.delx.au - gnu-emacs/commitdiff
(gud-mode): Add gud-kill-buffer-hook to kill-buffer-hook here and make it local.
authorNick Roberts <nickrob@snap.net.nz>
Wed, 12 May 2004 20:43:47 +0000 (20:43 +0000)
committerNick Roberts <nickrob@snap.net.nz>
Wed, 12 May 2004 20:43:47 +0000 (20:43 +0000)
(gud-kill-buffer-hook): Use kill-process for a sure kill.

lisp/progmodes/gud.el

index 035b5da875ab36e87a250eece93677b14cda7ba4..84dec78d8958f8a9020ab740b681c8d30e18dea7 100644 (file)
@@ -2339,7 +2339,8 @@ comint mode, which see."
   ;; Don't put repeated commands in command history many times.
   (set (make-local-variable 'comint-input-ignoredups) t)
   (make-local-variable 'paragraph-start)
-  (set (make-local-variable 'gud-delete-prompt-marker) (make-marker)))
+  (set (make-local-variable 'gud-delete-prompt-marker) (make-marker))
+  (add-hook 'kill-buffer-hook 'gud-kill-buffer-hook nil t))
 
 ;; Cause our buffers to be displayed, by default,
 ;; in the selected window.
@@ -2546,10 +2547,10 @@ It is saved for when this flag is not set.")
             (set-buffer obuf))))))
 
 (defun gud-kill-buffer-hook ()
-  (if gud-minor-mode
-      (setq gud-minor-mode-type gud-minor-mode)))
-
-(add-hook 'kill-buffer-hook 'gud-kill-buffer-hook)
+  (setq gud-minor-mode-type gud-minor-mode)
+  (condition-case nil
+      (kill-process (get-buffer-process gud-comint-buffer))
+    (error nil)))
 
 (defun gud-reset ()
   (dolist (buffer (buffer-list))