[gnu.emacs.bug] compile.el process sentinel bug

wolfgang@BBN.COM (12/29/88)

In GNU Emacs 18.51.5 of Tue May 17 1988 on nova.bbn.com (berkeley-unix)

There is a minor bug in the compilation sentinel in "compile.el".
It turns out that the old buffer-positions are saved for the wrong
buffer.

---
Wolfgang Rupprecht	ARPA:  wolfgang@mgm.mit.edu (IP 18.82.0.114)
326 Commonwealth Ave.	UUCP:  mit-eddie!mgm.mit.edu!wolfgang
Boston, Ma. 02115	TEL:   (617) 267-4365


diff -c compile.el.~1~ compile.el
*** compile.el.~1~	Thu Dec 29 09:51:46 1988
--- compile.el	Thu Dec 29 09:53:52 1988
***************
*** 121,128 ****
  	 (set-process-buffer proc nil))
  	((memq (process-status proc) '(signal exit))
  	 (let* ((obuf (current-buffer))
! 		(omax (point-max))
! 		(opoint (point)))
  	   ;; save-excursion isn't the right thing if
  	   ;;  process-buffer is current-buffer
  	   (unwind-protect
--- 121,127 ----
  	 (set-process-buffer proc nil))
  	((memq (process-status proc) '(signal exit))
  	 (let* ((obuf (current-buffer))
! 		omax opoint)
  	   ;; save-excursion isn't the right thing if
  	   ;;  process-buffer is current-buffer
  	   (unwind-protect
***************
*** 129,134 ****
--- 128,135 ----
  	       (progn
  		 ;; Write something in *compilation* and hack its mode line,
  		 (set-buffer (process-buffer proc))
+ 		 (setq opoint (point)
+ 		       omax (point-max))
  		 (goto-char (point-max))
  		 (insert ?\n mode-name " " msg)
  		 (forward-char -1)
***************
*** 145,151 ****
  	     (setq compilation-process nil)
  	     ;; Force mode line redisplay soon
  	     (set-buffer-modified-p (buffer-modified-p)))
! 	   (if (< opoint omax)
  	       (goto-char opoint))
  	   (set-buffer obuf)))))
  
--- 146,152 ----
  	     (setq compilation-process nil)
  	     ;; Force mode line redisplay soon
  	     (set-buffer-modified-p (buffer-modified-p)))
! 	   (if (and opoint omax (< opoint omax))
  	       (goto-char opoint))
  	   (set-buffer obuf)))))
  

diff exited abnormally with code 1