1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2025-01-12 16:23:57 +00:00

(diff-test-hunk): Backout previous change. Fix doc string.

(diff-apply-hunk): Don't return a value.
This commit is contained in:
Miles Bader 2000-10-02 06:50:45 +00:00
parent 00df919ede
commit 4eaa6852c9
2 changed files with 19 additions and 27 deletions

View File

@ -2,9 +2,10 @@
* diff-mode.el (diff-goto-source): Emit a status message.
(diff-test-hunk, diff-apply-hunk): Remove unneeded `let'.
(diff-test-hunk): Make the return value agree with the doc string.
(diff-test-hunk): Fix doc string.
(diff-apply-hunk): Only advance if `diff-advance-after-apply-hunk'.
(diff-advance-after-apply-hunk): New variable.
(diff-apply-hunk): Don't return a value.
2000-10-01 Stefan Monnier <monnier@cs.yale.edu>

View File

@ -4,7 +4,7 @@
;; Author: Stefan Monnier <monnier@cs.yale.edu>
;; Keywords: patch diff
;; Revision: $Id: diff-mode.el,v 1.24 2000/09/29 18:05:27 monnier Exp $
;; Revision: $Id: diff-mode.el,v 1.25 2000/10/02 03:46:26 miles Exp $
;; This file is part of GNU Emacs.
@ -1019,15 +1019,13 @@ By default, the new source file is patched, but if the variable
patched instead (some commands, such as `diff-goto-source' can change
the value of this variable when given an appropriate prefix argument).
With a prefix argument, REVERSE the hunk.
Return value is t if the hunk was sucessfully applied, `reversed' if the
hunk was applied backwards and nil if the hunk wasn't applied."
With a prefix argument, REVERSE the hunk."
(interactive "P")
(destructuring-bind (buf line-offset pos old new &optional switched)
(diff-find-source-location nil reverse)
(cond
((null line-offset) (error "Can't find the text to patch"))
((null line-offset)
(error "Can't find the text to patch"))
((and switched
;; A reversed patch was detected, perhaps apply it in reverse
(not (save-window-excursion
@ -1037,36 +1035,29 @@ hunk was applied backwards and nil if the hunk wasn't applied."
(if reverse
"Hunk hasn't been applied yet; apply it now? "
"Hunk has already been applied; undo it? ")))))
(message "(Nothing done)")
nil)
(message "(Nothing done)"))
(t
(let ((reversed (diff-xor switched reverse)))
;; Apply the hunk
(with-current-buffer buf
(goto-char pos)
(delete-char (length (car old)))
(insert (car new)))
;; Display BUF in a window
(set-window-point (display-buffer buf) (+ pos (cdr new)))
(diff-hunk-status-msg line-offset reversed nil)
(when diff-advance-after-apply-hunk
(diff-hunk-next))
(if reversed 'reversed t))))))
;; Apply the hunk
(with-current-buffer buf
(goto-char pos)
(delete-char (length (car old)))
(insert (car new)))
;; Display BUF in a window
(set-window-point (display-buffer buf) (+ pos (cdr new)))
(diff-hunk-status-msg line-offset (diff-xor switched reverse) nil)
(when diff-advance-after-apply-hunk
(diff-hunk-next))))))
(defun diff-test-hunk (&optional reverse)
;; FIXME: is `reverse' ever useful ???
"See whether it's possible to apply the current hunk.
With a prefix argument, try to REVERSE the hunk.
Returns t if the hunk can be applied, `reversed' if it's already
applied and nil if it can't be found."
With a prefix argument, try to REVERSE the hunk."
(interactive "P")
(destructuring-bind (buf line-offset pos src dst &optional switched)
(diff-find-source-location nil reverse)
(set-window-point (display-buffer buf) (+ pos (cdr src)))
(let ((reversed (diff-xor switched reverse)))
(diff-hunk-status-msg line-offset (diff-xor reverse switched) t)
(if reversed 'reversed t))))
(diff-hunk-status-msg line-offset (diff-xor reverse switched) t)))
(defun diff-goto-source (&optional other-file)