summaryrefslogtreecommitdiff
path: root/lisp/image-mode.el
diff options
context:
space:
mode:
authorLars Ingebrigtsen <larsi@gnus.org>2020-08-20 20:09:51 +0200
committerLars Ingebrigtsen <larsi@gnus.org>2020-08-20 20:09:57 +0200
commitec990559180254c59d80308655b11df4223dd23d (patch)
tree03d6360fc158c4f38e23e13fe218a77e065975d4 /lisp/image-mode.el
parentbf60338d6dd02b4d848229878c8e14182f6f861f (diff)
downloademacs-ec990559180254c59d80308655b11df4223dd23d.tar.gz
emacs-ec990559180254c59d80308655b11df4223dd23d.tar.bz2
emacs-ec990559180254c59d80308655b11df4223dd23d.zip
Make image-mode give better feedback when the buffer is empty
* lisp/image-mode.el (image-mode): Give a less confusing message if we don't have any image data (bug#16062). Also leave the buffer in fundamental mode.
Diffstat (limited to 'lisp/image-mode.el')
-rw-r--r--lisp/image-mode.el9
1 files changed, 9 insertions, 0 deletions
diff --git a/lisp/image-mode.el b/lisp/image-mode.el
index 948e62e10d0..4c719f7cda2 100644
--- a/lisp/image-mode.el
+++ b/lisp/image-mode.el
@@ -612,6 +612,15 @@ Key bindings:
(setq major-mode 'image-mode)
(setq image-transform-resize image-auto-resize)
+ ;; Bail out early if we have no image data.
+ (if (zerop (buffer-size))
+ (funcall (if (called-interactively-p 'any) 'error 'message)
+ (if (file-exists-p buffer-file-name)
+ "Empty file"
+ "(New file)"))
+ (image-mode--display)))
+
+(defun image-mode--display ()
(if (not (image-get-display-property))
(progn
(when (condition-case err