branch: master
commit 90f4b242e1a402dddafccff09e8d161b12416f13
Author: Justin Burkett <[email protected]>
Commit: Justin Burkett <[email protected]>
Ensure char-before doesn't cause an error
It won't return a number when at the beginning of a buffer.
---
vdiff.el | 12 ++++++++----
1 file changed, 8 insertions(+), 4 deletions(-)
diff --git a/vdiff.el b/vdiff.el
index 32b2092..29c02a4 100644
--- a/vdiff.el
+++ b/vdiff.el
@@ -536,14 +536,16 @@ POST-REFRESH-FUNCTION is called when the process
finishes."
(with-current-buffer (car buffers)
(write-region nil nil tmp-a nil 'quietly)
;; ensure tmp file ends in newline
- (unless (= (char-before (point-max)) ?\n)
+ (when (or (= (point-min) (point-max))
+ (/= (char-before (point-max)) ?\n))
(message "vdiff: Warning %s does not end in a newline."
(if buffer-file-name buffer-file-name (buffer-name)))
(write-region "\n" nil tmp-a t 'quietly)))
(with-current-buffer (cadr buffers)
(write-region nil nil tmp-b nil 'quietly)
;; ensure tmp file ends in newline
- (unless (= (char-before (point-max)) ?\n)
+ (when (or (= (point-min) (point-max))
+ (/= (char-before (point-max)) ?\n))
(message "vdiff: Warning %s does not end in a newline."
(if buffer-file-name buffer-file-name (buffer-name)))
(write-region "\n" nil tmp-b t 'quietly)))
@@ -551,7 +553,8 @@ POST-REFRESH-FUNCTION is called when the process finishes."
(with-current-buffer (nth 2 buffers)
(write-region nil nil tmp-c nil 'quietly)
;; ensure tmp file ends in newline
- (unless (= (char-before (point-max)) ?\n)
+ (when (or (= (point-min) (point-max))
+ (/= (char-before (point-max)) ?\n))
(message "vdiff: Warning %s does not end in a newline."
(if buffer-file-name buffer-file-name (buffer-name)))
(write-region "\n" nil tmp-c t 'quietly))))
@@ -1390,7 +1393,8 @@ immediately preceding line."
(let ((end (when (number-or-marker-p end)
(save-excursion
(goto-char end)
- (unless (= (char-before) ?\n)
+ (when (and (char-before)
+ (/= (char-before) ?\n))
(forward-line))
(point)))))
(if (and end (< end max)) end max)))