From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Lars Ingebrigtsen Newsgroups: gmane.emacs.bugs Subject: bug#23431: 25.0.93; EWW hangs Date: Tue, 03 May 2016 20:17:43 +0200 Message-ID: <87d1p32ego.fsf@gnus.org> References: <87bn4nx1iq.wl-jch@pps.univ-paris-diderot.fr> <87zis75ibn.fsf@gnus.org> <87d1p35e2g.fsf@gnus.org> <8360uvkt9y.fsf@gnu.org> <874maf5cqb.fsf@gnus.org> <8337pzksce.fsf@gnu.org> <87shxz3wfe.fsf@gnus.org> <83vb2vjc2p.fsf@gnu.org> <874maf3vhh.fsf@gnus.org> <83shxzjb0u.fsf@gnu.org> <87r3dj2fve.fsf@gnus.org> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1462299523 6297 80.91.229.3 (3 May 2016 18:18:43 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 3 May 2016 18:18:43 +0000 (UTC) Cc: 23431@debbugs.gnu.org, jch@pps.univ-paris-diderot.fr To: Eli Zaretskii Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Tue May 03 20:18:32 2016 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1axetz-0002Q2-Rt for geb-bug-gnu-emacs@m.gmane.org; Tue, 03 May 2016 20:18:31 +0200 Original-Received: from localhost ([::1]:42693 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1axetv-0008Mb-SD for geb-bug-gnu-emacs@m.gmane.org; Tue, 03 May 2016 14:18:27 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:46990) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1axetl-00087u-V4 for bug-gnu-emacs@gnu.org; Tue, 03 May 2016 14:18:24 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1axeta-00027h-2g for bug-gnu-emacs@gnu.org; Tue, 03 May 2016 14:18:12 -0400 Original-Received: from debbugs.gnu.org ([208.118.235.43]:51550) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1axetZ-00024e-TP for bug-gnu-emacs@gnu.org; Tue, 03 May 2016 14:18:06 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1axetW-0002ni-Fp for bug-gnu-emacs@gnu.org; Tue, 03 May 2016 14:18:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Lars Ingebrigtsen Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 03 May 2016 18:18:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 23431 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 23431-submit@debbugs.gnu.org id=B23431.146229946810746 (code B ref 23431); Tue, 03 May 2016 18:18:02 +0000 Original-Received: (at 23431) by debbugs.gnu.org; 3 May 2016 18:17:48 +0000 Original-Received: from localhost ([127.0.0.1]:35654 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1axetH-0002nF-TA for submit@debbugs.gnu.org; Tue, 03 May 2016 14:17:48 -0400 Original-Received: from hermes.netfonds.no ([80.91.224.195]:34849) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1axetG-0002n8-K7 for 23431@debbugs.gnu.org; Tue, 03 May 2016 14:17:47 -0400 Original-Received: from cm-84.215.1.64.getinternet.no ([84.215.1.64] helo=mouse) by hermes.netfonds.no with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2) (envelope-from ) id 1axetD-0001lw-Bz; Tue, 03 May 2016 20:17:45 +0200 In-Reply-To: <87r3dj2fve.fsf@gnus.org> (Lars Ingebrigtsen's message of "Tue, 03 May 2016 19:47:17 +0200") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1.50 (gnu/linux) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 208.118.235.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.org gmane.emacs.bugs:117672 Archived-At: Does the following patch help? It'll cache the metadata. Doesn't make much difference on the test image for me. diff --git a/lisp/image.el b/lisp/image.el index 2ae642a..9c27664 100644 --- a/lisp/image.el +++ b/lisp/image.el @@ -698,14 +698,21 @@ image-multi-frame-p the number of frames (or sub-images) in the image and DELAY is the delay in seconds that the image specifies between each frame. DELAY may be nil, in which case you might want to use `image-default-frame-delay'." - (when (fboundp 'image-metadata) - (let* ((metadata (image-metadata image)) - (images (plist-get metadata 'count)) - (delay (plist-get metadata 'delay))) - (when (and images (> images 1)) - (and delay (or (not (numberp delay)) (< delay 0)) - (setq delay image-default-frame-delay)) - (cons images delay))))) + (or (plist-get (cdr image) :image-metadata) + (when (fboundp 'image-metadata) + (let* ((metadata (image-metadata image)) + (images (plist-get metadata 'count)) + (delay (plist-get metadata 'delay)) + (result + (and images + (> images 1) + (cons images + (if (or (not (numberp delay)) + (< delay 0)) + image-default-frame-delay + delay))))) + (plist-put (cdr image) :image-metadata result) + result)))) (defun image-animated-p (image) "Like `image-multi-frame-p', but returns nil if no delay is specified." -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no