]> git.eshelyaron.com Git - emacs.git/commitdiff
Make gnus-rescale-image work on modern Emacs versions
authorLars Ingebrigtsen <larsi@gnus.org>
Wed, 25 Sep 2019 12:47:52 +0000 (14:47 +0200)
committerLars Ingebrigtsen <larsi@gnus.org>
Wed, 25 Sep 2019 12:47:52 +0000 (14:47 +0200)
* lisp/gnus/gnus-util.el (gnus-rescale-image): Make this work with
native image transforms.

lisp/gnus/gnus-util.el

index 6847d372cc50f79a76bccc9fa1a2f8a314c4e529..dc779d0487446df3c468efebc4f9164323f8ecfd 100644 (file)
@@ -1606,26 +1606,19 @@ empty directories from OLD-PATH."
   (ignore-errors
     (set-file-modes filename mode)))
 
-(declare-function image-size "image.c" (spec &optional pixels frame))
-
 (defun gnus-rescale-image (image size)
   "Rescale IMAGE to SIZE if possible.
 SIZE is in format (WIDTH . HEIGHT).  Return a new image.
 Sizes are in pixels."
-  (if (not (fboundp 'imagemagick-types))
-      image
-    (let ((new-width (car size))
-          (new-height (cdr size)))
-      (when (> (cdr (image-size image t)) new-height)
-        (setq image (or (create-image (plist-get (cdr image) :data) 'imagemagick t
-                                      :height new-height)
-                        image)))
-      (when (> (car (image-size image t)) new-width)
-        (setq image (or
-                   (create-image (plist-get (cdr image) :data) 'imagemagick t
-                                 :width new-width)
-                   image)))
-      image)))
+  (let ((new-width (car size))
+        (new-height (cdr size)))
+    (when (> (cdr (image-size image t)) new-height)
+      (setq image (create-image (plist-get (cdr image) :data) nil t
+                                :max-height new-height)))
+    (when (> (car (image-size image t)) new-width)
+      (setq image (create-image (plist-get (cdr image) :data) nil t
+                                :max-width new-width)))
+    image))
 
 (defun gnus-recursive-directory-files (dir)
   "Return all regular files below DIR.