From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Eric Hanchrow Newsgroups: gmane.emacs.bugs Subject: bug#21895: [PATCH] shr: don't invoke unbound function (Bug#21895) Date: Fri, 13 Nov 2015 01:29:33 +0000 Message-ID: References: NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: multipart/alternative; boundary=001a1140cd0679c6aa052461fe17 X-Trace: ger.gmane.org 1447378225 5664 80.91.229.3 (13 Nov 2015 01:30:25 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Fri, 13 Nov 2015 01:30:25 +0000 (UTC) To: 21895@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Fri Nov 13 02:30:17 2015 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 1Zx3Bu-0003HT-Ja for geb-bug-gnu-emacs@m.gmane.org; Fri, 13 Nov 2015 02:30:14 +0100 Original-Received: from localhost ([::1]:50543 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Zx3Bu-0003Aj-8H for geb-bug-gnu-emacs@m.gmane.org; Thu, 12 Nov 2015 20:30:14 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:43404) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Zx3Bq-0003A2-Cg for bug-gnu-emacs@gnu.org; Thu, 12 Nov 2015 20:30:11 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Zx3Bn-00076m-51 for bug-gnu-emacs@gnu.org; Thu, 12 Nov 2015 20:30:10 -0500 Original-Received: from debbugs.gnu.org ([208.118.235.43]:44558) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Zx3Bn-00076g-0g for bug-gnu-emacs@gnu.org; Thu, 12 Nov 2015 20:30:07 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1Zx3Bl-0006kL-KO for bug-gnu-emacs@gnu.org; Thu, 12 Nov 2015 20:30:05 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Eric Hanchrow Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 13 Nov 2015 01:30:05 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 21895 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 21895-submit@debbugs.gnu.org id=B21895.144737818725878 (code B ref 21895); Fri, 13 Nov 2015 01:30:05 +0000 Original-Received: (at 21895) by debbugs.gnu.org; 13 Nov 2015 01:29:47 +0000 Original-Received: from localhost ([127.0.0.1]:35266 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1Zx3BS-0006jJ-Kw for submit@debbugs.gnu.org; Thu, 12 Nov 2015 20:29:47 -0500 Original-Received: from mail-io0-f173.google.com ([209.85.223.173]:34237) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1Zx3BQ-0006jB-Bt for 21895@debbugs.gnu.org; Thu, 12 Nov 2015 20:29:44 -0500 Original-Received: by ioir85 with SMTP id r85so43161790ioi.1 for <21895@debbugs.gnu.org>; Thu, 12 Nov 2015 17:29:43 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :content-type; bh=WJSR3lMGdZ/ybmQ81dgSpJ/DKxzIwxUhwv5ta1Yp0ug=; b=ZIuI/x7fMrmck2SxhaQa5dBClm3ROjN0Ei67K1o78zSOzmJv98NM1hfAykcTiyC+pc vEJnIrJfdKrwcUIib2eeUrCC2weakzqD0LCVwwoCcBj9qZ3Zk+pf5lThxRPyc0PAWYyB Y1tndx5uT5IejoGkOSL83mdkEbl5WawDq8mMdcKqTvGp7I2VvRp/93+PG7Gfx/Y0tkSG 8o6mVDxiRS8H9KDiYDuIFfeqkR+SbvsIapN+UhW+KU38YWnK7hrNlIWWDXEpGJAg8jmR RfiMadL4gCccGItyVLqU5migXf4DjWKdYirjUknb8ryi+uu9Wwajns70WwmuPYg0pONN YveQ== X-Received: by 10.107.32.209 with SMTP id g200mr10409327iog.39.1447378183372; Thu, 12 Nov 2015 17:29:43 -0800 (PST) In-Reply-To: X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x 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-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:108699 Archived-At: --001a1140cd0679c6aa052461fe17 Content-Type: text/plain; charset=UTF-8 * lisp/net/shr.el (fringes-p): New function. (shr-insert-document, shr-fill-text): Use it. --- lisp/net/shr.el | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/lisp/net/shr.el b/lisp/net/shr.el index 58deaea..853b2fd 100644 --- a/lisp/net/shr.el +++ b/lisp/net/shr.el @@ -203,6 +203,12 @@ cid: URL as the argument.") (goto-char begin) (shr-insert-document dom)))) +(defun fringes-p () + "Return t if fringe-columns is bound, and either (fringe-columns 'left) or (fringe-columns 'right) returns nonzero." + (and (fboundp 'fringe-columns) + (or (not (zerop (fringe-columns 'right))) + (not (zerop (fringe-columns 'left)))))) + ;;;###autoload (defun shr-insert-document (dom) "Render the parsed document DOM into the current buffer. @@ -230,19 +236,13 @@ DOM should be a parse tree as generated by (if (not shr-use-fonts) (- (window-body-width) 1 (if (and (null shr-width) - (or (zerop - (fringe-columns 'right)) - (zerop - (fringe-columns 'left)))) + (not (fringes-p))) 0 1)) (- (window-body-width nil t) (* 2 (frame-char-width)) (if (and (null shr-width) - (or (zerop - (fringe-columns 'right)) - (zerop - (fringe-columns 'left)))) + (not (fringes-p))) (* (frame-char-width) 2) 0)))))) (shr-descend dom) @@ -466,8 +466,7 @@ size, and full-buffer size." ;; to usurp one column for the ;; continuation glyph. (if (and (null shr-width) - (or (zerop (fringe-columns 'right)) - (zerop (fringe-columns 'left)))) + (not (fringes-p))) (* (frame-char-width) 2) 0)))) (shr-insert text) -- 2.6.3 On Thu, Nov 12, 2015 at 4:17 PM Eric Hanchrow wrote: > twb points out that I can (require 'fringe) to make the problem go away. > --001a1140cd0679c6aa052461fe17 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: base64 PGRpdiBkaXI9Imx0ciI+PGRpdj48c3BhbiBzdHlsZT0ibGluZS1oZWlnaHQ6MS41Ij4qIGxpc3Av bmV0L3Noci5lbCAoZnJpbmdlcy1wKTo8L3NwYW4+PGJyPjwvZGl2PjxkaXY+TmV3IGZ1bmN0aW9u LjwvZGl2PjxkaXY+KHNoci1pbnNlcnQtZG9jdW1lbnQsIHNoci1maWxsLXRleHQpOiBVc2UgaXQu PC9kaXY+PGRpdj4tLS08L2Rpdj48ZGl2PsKgbGlzcC9uZXQvc2hyLmVsIHwgMTkgKysrKysrKysr LS0tLS0tLS0tLTwvZGl2PjxkaXY+wqAxIGZpbGUgY2hhbmdlZCwgOSBpbnNlcnRpb25zKCspLCAx MCBkZWxldGlvbnMoLSk8L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2PmRpZmYgLS1naXQgYS9saXNw L25ldC9zaHIuZWwgYi9saXNwL25ldC9zaHIuZWw8L2Rpdj48ZGl2PmluZGV4IDU4ZGVhZWEuLjg1 M2IyZmQgMTAwNjQ0PC9kaXY+PGRpdj4tLS0gYS9saXNwL25ldC9zaHIuZWw8L2Rpdj48ZGl2Pisr KyBiL2xpc3AvbmV0L3Noci5lbDwvZGl2PjxkaXY+QEAgLTIwMyw2ICsyMDMsMTIgQEAgY2lkOiBV UkwgYXMgdGhlIGFyZ3VtZW50LiZxdW90Oyk8L2Rpdj48ZGl2PsKgIMKgIMKgIMKgKGdvdG8tY2hh ciBiZWdpbik8L2Rpdj48ZGl2PsKgIMKgIMKgIMKgKHNoci1pbnNlcnQtZG9jdW1lbnQgZG9tKSkp KTwvZGl2PjxkaXY+wqA8L2Rpdj48ZGl2PisoZGVmdW4gZnJpbmdlcy1wICgpPC9kaXY+PGRpdj4r IMKgJnF1b3Q7UmV0dXJuIHQgaWYgZnJpbmdlLWNvbHVtbnMgaXMgYm91bmQsIGFuZCBlaXRoZXIg KGZyaW5nZS1jb2x1bW5zICYjMzk7bGVmdCkgb3IgKGZyaW5nZS1jb2x1bW5zICYjMzk7cmlnaHQp IHJldHVybnMgbm9uemVyby4mcXVvdDs8L2Rpdj48ZGl2PisgwqAoYW5kIChmYm91bmRwICYjMzk7 ZnJpbmdlLWNvbHVtbnMpPC9kaXY+PGRpdj4rIMKgIMKgIMKgIChvciAobm90ICh6ZXJvcCAoZnJp bmdlLWNvbHVtbnMgJiMzOTtyaWdodCkpKTwvZGl2PjxkaXY+KyDCoCDCoCDCoCDCoCDCoCAobm90 ICh6ZXJvcCAoZnJpbmdlLWNvbHVtbnMgJiMzOTtsZWZ0KSkpKSkpPC9kaXY+PGRpdj4rPC9kaXY+ PGRpdj7CoDs7OyMjI2F1dG9sb2FkPC9kaXY+PGRpdj7CoChkZWZ1biBzaHItaW5zZXJ0LWRvY3Vt ZW50IChkb20pPC9kaXY+PGRpdj7CoCDCoCZxdW90O1JlbmRlciB0aGUgcGFyc2VkIGRvY3VtZW50 IERPTSBpbnRvIHRoZSBjdXJyZW50IGJ1ZmZlci48L2Rpdj48ZGl2PkBAIC0yMzAsMTkgKzIzNiwx MyBAQCBET00gc2hvdWxkIGJlIGEgcGFyc2UgdHJlZSBhcyBnZW5lcmF0ZWQgYnk8L2Rpdj48ZGl2 PsKgPHNwYW4gY2xhc3M9IkFwcGxlLXRhYi1zcGFuIiBzdHlsZT0id2hpdGUtc3BhY2U6cHJlIj4J CQkJPC9zcGFuPihpZiAobm90IHNoci11c2UtZm9udHMpPC9kaXY+PGRpdj7CoDxzcGFuIGNsYXNz PSJBcHBsZS10YWItc3BhbiIgc3R5bGU9IndoaXRlLXNwYWNlOnByZSI+CQkJCTwvc3Bhbj4gwqAg wqAoLSAod2luZG93LWJvZHktd2lkdGgpIDE8L2Rpdj48ZGl2PsKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIChpZiAoYW5kIChudWxsIHNo ci13aWR0aCk8L2Rpdj48ZGl2Pi0gwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAob3IgKHplcm9wPC9kaXY+PGRpdj4t IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIChmcmluZ2UtY29sdW1ucyAmIzM5O3JpZ2h0KSk8L2Rpdj48 ZGl2Pi0gwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAoemVyb3A8L2Rpdj48ZGl2Pi0gwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAgKGZyaW5nZS1jb2x1bW5zICYjMzk7bGVmdCkpKSk8L2Rpdj48ZGl2PisgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAobm90IChmcmluZ2VzLXApKSk8L2Rpdj48ZGl2PsKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIDA8L2Rpdj48ZGl2 PsKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIDEpKTwvZGl2PjxkaXY+wqA8c3BhbiBjbGFzcz0iQXBwbGUtdGFiLXNwYW4iIHN0eWxl PSJ3aGl0ZS1zcGFjZTpwcmUiPgkJCQk8L3NwYW4+IMKgKC0gKHdpbmRvdy1ib2R5LXdpZHRoIG5p bCB0KTwvZGl2PjxkaXY+wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgKCogMiAoZnJhbWUtY2hhci13aWR0aCkpPC9kaXY+PGRpdj7CoCDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCAoaWYgKGFu ZCAobnVsbCBzaHItd2lkdGgpPC9kaXY+PGRpdj4tIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgKG9yICh6ZXJvcDwvZGl2 PjxkaXY+LSDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCAoZnJpbmdlLWNvbHVtbnMgJiMzOTtyaWdodCkpPC9k aXY+PGRpdj4tIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgKHplcm9wPC9kaXY+PGRpdj4tIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIChmcmluZ2UtY29sdW1ucyAmIzM5O2xlZnQpKSkpPC9kaXY+PGRpdj4rIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgKG5vdCAoZnJpbmdlcy1wKSkpPC9kaXY+PGRpdj7CoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCAoKiAoZnJhbWUtY2hhci13aWR0 aCkgMik8L2Rpdj48ZGl2PsKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIDApKSkpKSk8L2Rpdj48ZGl2PsKgIMKgIMKgKHNoci1kZXNjZW5k IGRvbSk8L2Rpdj48ZGl2PkBAIC00NjYsOCArNDY2LDcgQEAgc2l6ZSwgYW5kIGZ1bGwtYnVmZmVy IHNpemUuJnF1b3Q7PC9kaXY+PGRpdj7CoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoCA7OyB0byB1c3VycCBvbmUgY29sdW1uIGZvciB0aGU8L2Rpdj48 ZGl2PsKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IDs7IGNvbnRpbnVhdGlvbiBnbHlwaC48L2Rpdj48ZGl2PsKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIChpZiAoYW5kIChudWxsIHNoci13aWR0aCk8 L2Rpdj48ZGl2Pi0gwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAob3IgKHplcm9wIChmcmluZ2UtY29sdW1ucyAmIzM5O3JpZ2h0 KSk8L2Rpdj48ZGl2Pi0gwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAoemVyb3AgKGZyaW5nZS1jb2x1bW5zICYjMzk7 bGVmdCkpKSk8L2Rpdj48ZGl2PisgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAobm90IChmcmluZ2VzLXApKSk8L2Rpdj48ZGl2 PsKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgICgqIChmcmFtZS1jaGFyLXdpZHRoKSAyKTwvZGl2PjxkaXY+wqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgMCkpKSk8L2Rpdj48ZGl2PsKg PHNwYW4gY2xhc3M9IkFwcGxlLXRhYi1zcGFuIiBzdHlsZT0id2hpdGUtc3BhY2U6cHJlIj4JPC9z cGFuPihzaHItaW5zZXJ0IHRleHQpPC9kaXY+PGRpdj4tLcKgPC9kaXY+PGRpdj4yLjYuMzwvZGl2 PjxkaXY+PGJyPjwvZGl2Pjxicj48ZGl2IGNsYXNzPSJnbWFpbF9xdW90ZSI+PGRpdiBkaXI9Imx0 ciI+T24gVGh1LCBOb3YgMTIsIDIwMTUgYXQgNDoxNyBQTSBFcmljIEhhbmNocm93ICZsdDs8YSBo cmVmPSJtYWlsdG86ZXJpYy5oYW5jaHJvd0BnbWFpbC5jb20iPmVyaWMuaGFuY2hyb3dAZ21haWwu Y29tPC9hPiZndDsgd3JvdGU6PGJyPjwvZGl2PjxibG9ja3F1b3RlIGNsYXNzPSJnbWFpbF9xdW90 ZSIgc3R5bGU9Im1hcmdpbjowIDAgMCAuOGV4O2JvcmRlci1sZWZ0OjFweCAjY2NjIHNvbGlkO3Bh ZGRpbmctbGVmdDoxZXgiPjxkaXYgZGlyPSJsdHIiPnR3YiBwb2ludHMgb3V0IHRoYXQgSSBjYW4g KHJlcXVpcmUgJiMzOTtmcmluZ2UpIHRvIG1ha2UgdGhlIHByb2JsZW0gZ28gYXdheS48L2Rpdj48 L2Jsb2NrcXVvdGU+PC9kaXY+PC9kaXY+DQo= --001a1140cd0679c6aa052461fe17--