aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lisp/ChangeLog5
-rw-r--r--lisp/net/shr.el1
-rw-r--r--src/ChangeLog1
-rw-r--r--src/image.c13
4 files changed, 13 insertions, 7 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 1b20f9cc10e..8440647737c 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,8 @@
12013-08-16 Lars Magne Ingebrigtsen <larsi@gnus.org>
2
3 * net/shr.el (shr-rescale-image): Use ImageMagick even for GIFs
4 now that Emacs supports ImageMagick animations.
5
12013-08-16 Michael Albinus <michael.albinus@gmx.de> 62013-08-16 Michael Albinus <michael.albinus@gmx.de>
2 7
3 * net/tramp-cmds.el (top): Don't declare `buffer-name'. 8 * net/tramp-cmds.el (top): Don't declare `buffer-name'.
diff --git a/lisp/net/shr.el b/lisp/net/shr.el
index 3283712bf0a..9cac618b159 100644
--- a/lisp/net/shr.el
+++ b/lisp/net/shr.el
@@ -779,7 +779,6 @@ element is the data blob and the second element is the content-type."
779 "Rescale DATA, if too big, to fit the current buffer. 779 "Rescale DATA, if too big, to fit the current buffer.
780If FORCE, rescale the image anyway." 780If FORCE, rescale the image anyway."
781 (if (or (not (fboundp 'imagemagick-types)) 781 (if (or (not (fboundp 'imagemagick-types))
782 (eq (image-type-from-data data) 'gif)
783 (not (get-buffer-window (current-buffer)))) 782 (not (get-buffer-window (current-buffer))))
784 (create-image data nil t :ascent 100) 783 (create-image data nil t :ascent 100)
785 (let ((edges (window-inside-pixel-edges 784 (let ((edges (window-inside-pixel-edges
diff --git a/src/ChangeLog b/src/ChangeLog
index d5c97748d1a..de9724238a0 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,6 +1,7 @@
12013-08-16 Lars Magne Ingebrigtsen <larsi@gnus.org> 12013-08-16 Lars Magne Ingebrigtsen <larsi@gnus.org>
2 2
3 * image.c: Implement an ImageMagick per-image cache. 3 * image.c: Implement an ImageMagick per-image cache.
4 (imagemagick_get_animation_cache): Fix a double-free error.
4 5
52013-08-16 Xue Fuqiao <xfq.free@gmail.com> 62013-08-16 Xue Fuqiao <xfq.free@gmail.com>
6 7
diff --git a/src/image.c b/src/image.c
index 082cc6a762a..3607be1e86c 100644
--- a/src/image.c
+++ b/src/image.c
@@ -7901,7 +7901,7 @@ void
7901imagemagick_prune_animation_cache () 7901imagemagick_prune_animation_cache ()
7902{ 7902{
7903 struct animation_cache *cache = animation_cache; 7903 struct animation_cache *cache = animation_cache;
7904 struct animation_cache *prev; 7904 struct animation_cache *prev = NULL;
7905 EMACS_TIME old = sub_emacs_time (current_emacs_time (), 7905 EMACS_TIME old = sub_emacs_time (current_emacs_time (),
7906 EMACS_TIME_FROM_DOUBLE (60)); 7906 EMACS_TIME_FROM_DOUBLE (60));
7907 7907
@@ -7920,17 +7920,18 @@ imagemagick_prune_animation_cache ()
7920 cache = cache->next; 7920 cache = cache->next;
7921 free (this_cache); 7921 free (this_cache);
7922 } 7922 }
7923 else { 7923 else
7924 prev = cache; 7924 {
7925 cache = cache->next; 7925 prev = cache;
7926 } 7926 cache = cache->next;
7927 }
7927 } 7928 }
7928} 7929}
7929 7930
7930struct animation_cache * 7931struct animation_cache *
7931imagemagick_get_animation_cache (MagickWand *wand) 7932imagemagick_get_animation_cache (MagickWand *wand)
7932{ 7933{
7933 char *signature = MagickGetImageSignature (wand); 7934 char *signature = xstrdup (MagickGetImageSignature (wand));
7934 struct animation_cache *cache = animation_cache; 7935 struct animation_cache *cache = animation_cache;
7935 7936
7936 imagemagick_prune_animation_cache (); 7937 imagemagick_prune_animation_cache ();