Mercurial > emacs
diff lisp/image.el @ 96380:044f3969e191
(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'.
author | Juanma Barranquero <lekktu@gmail.com> |
---|---|
date | Fri, 27 Jun 2008 15:58:36 +0000 |
parents | 1c3bafe6e816 |
children | e8248a7b666d |
line wrap: on
line diff
--- a/lisp/image.el Fri Jun 27 14:32:24 2008 +0000 +++ b/lisp/image.el Fri Jun 27 15:58:36 2008 +0000 @@ -208,8 +208,8 @@ (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 @@ (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 @@ (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 @@ (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 @@ "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