diff options
author | Tino Calancha <tino.calancha@gmail.com> | 2016-09-04 11:09:31 +0900 |
---|---|---|
committer | Tino Calancha <tino.calancha@gmail.com> | 2016-09-04 11:09:31 +0900 |
commit | 2db3307e8a966a8f652a210d8f8eb83daddd7d9f (patch) | |
tree | 053f5bbe8b3be9c893b3267e519fd9cc91fe0191 | |
parent | 7c16c89c5772a1777e4d73ebc5ea2a3ff8344c22 (diff) |
image-type-from-file-name: Perform a case insensitive match
Fix Bug#24317
* lisp/image.el (image-type-from-file-name): Bind case-fold-search
to a non-nil value to force a case insensitive match.
* lisp/image-dired.el (image-dired-rotate-original):
Use image-type (Bug#24317).
(image-dired-get-exif-file-name): Idem.
Set 'no-exif-data-found' and 'data' in same setq call.
Use file-attribute-modification-time.
-rw-r--r-- | lisp/image-dired.el | 19 | ||||
-rw-r--r-- | lisp/image.el | 2 |
2 files changed, 10 insertions, 11 deletions
diff --git a/lisp/image-dired.el b/lisp/image-dired.el index 67b023dfd7..34e4eaefbc 100644 --- a/lisp/image-dired.el +++ b/lisp/image-dired.el @@ -1912,8 +1912,8 @@ overwritten. This confirmation can be turned off using (message "No image at point") (let ((file (image-dired-original-file-name)) command) - (if (not (string-match "\\.[jJ][pP[eE]?[gG]$" file)) - (error "Only JPEG images can be rotated!")) + (unless (eq 'jpeg (image-type file)) + (error "Only JPEG images can be rotated!")) (setq command (format-spec image-dired-cmd-rotate-original-options (list @@ -1952,15 +1952,14 @@ for traceability. The format of the returned file name is YYYY_MM_DD_HH_MM_DD_ORIG_FILE_NAME.jpg. Used from `image-dired-copy-with-exif-file-name'." (let (data no-exif-data-found) - (if (not (string-match "\\.[Jj][Pp][Ee]?[Gg]$" (expand-file-name file))) - (progn - (setq no-exif-data-found t) - (setq data - (format-time-string - "%Y:%m:%d %H:%M:%S" - (nth 5 (file-attributes (expand-file-name file)))))) + (if (not (eq 'jpeg (image-type (expand-file-name file)))) + (setq no-exif-data-found t + data (format-time-string + "%Y:%m:%d %H:%M:%S" + (file-attribute-modification-time + (file-attributes (expand-file-name file))))) (setq data (image-dired-get-exif-data (expand-file-name file) - "DateTimeOriginal"))) + "DateTimeOriginal"))) (while (string-match "[ :]" data) (setq data (replace-match "_" nil nil data))) (format "%s%s%s" data diff --git a/lisp/image.el b/lisp/image.el index 791a902a1b..e1f52de8be 100644 --- a/lisp/image.el +++ b/lisp/image.el @@ -343,7 +343,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." - (let (type first) + (let (type first (case-fold-search t)) (catch 'found (dolist (elem image-type-file-name-regexps first) (when (string-match-p (car elem) file) |