1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-11-23 07:19:15 +00:00

(image-jpeg-p): Don't fail if the arg cannot be converted to unibyte.

Just assume it is not a JPEG.  Use `string-match-p'.
(image-type-from-data, image-type-from-file-name): Use `string-match-p'.
(image-type-from-buffer): Use `looking-at-p'.
This commit is contained in:
Juanma Barranquero 2008-06-27 15:58:36 +00:00
parent 9fa1c445a9
commit 24c23999e1
2 changed files with 14 additions and 7 deletions

View File

@ -1,3 +1,10 @@
2008-06-27 Juanma Barranquero <lekktu@gmail.com>
* image.el (image-jpeg-p): Don't fail if the arg cannot be converted
to unibyte; just assume it is not a JPEG. Use `string-match-p'.
(image-type-from-data, image-type-from-file-name): Use `string-match-p'.
(image-type-from-buffer): Use `looking-at-p'.
2008-06-27 Juanma Barranquero <lekktu@gmail.com>
* ibuf-ext.el (diff-sentinel): Declare.

View File

@ -208,8 +208,8 @@ compatibility with versions of Emacs that lack the variable
(defun image-jpeg-p (data)
"Value is non-nil if DATA, a string, consists of JFIF image data.
We accept the tag Exif because that is the same format."
(setq data (string-to-unibyte data))
(when (string-match "\\`\xff\xd8" data)
(setq data (ignore-errors (string-to-unibyte data)))
(when (and data (string-match-p "\\`\xff\xd8" data))
(catch 'jfif
(let ((len (length data)) (i 2))
(while (< i len)
@ -224,8 +224,8 @@ We accept the tag Exif because that is the same format."
(when (and (>= code #xe0) (<= code #xef))
;; APP0 LEN1 LEN2 "JFIF\0"
(throw 'jfif
(string-match "JFIF\\|Exif"
(substring data i (min (+ i nbytes) len)))))
(string-match-p "JFIF\\|Exif"
(substring data i (min (+ i nbytes) len)))))
(setq i (+ i 1 nbytes))))))))
@ -240,7 +240,7 @@ be determined."
(let ((regexp (car (car types)))
(image-type (cdr (car types))))
(if (or (and (symbolp image-type)
(string-match regexp data))
(string-match-p regexp data))
(and (consp image-type)
(funcall (car image-type) data)
(setq image-type (cdr image-type))))
@ -264,7 +264,7 @@ be determined."
(image-type (cdr (car types)))
data)
(if (or (and (symbolp image-type)
(looking-at regexp))
(looking-at-p regexp))
(and (consp image-type)
(funcall (car image-type)
(or data
@ -302,7 +302,7 @@ be determined."
"Determine the type of image file FILE from its name.
Value is a symbol specifying the image type, or nil if type cannot
be determined."
(assoc-default file image-type-file-name-regexps 'string-match))
(assoc-default file image-type-file-name-regexps 'string-match-p))
;;;###autoload