aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLars Magne Ingebrigtsen2014-11-27 00:03:09 +0100
committerLars Magne Ingebrigtsen2014-11-27 00:03:09 +0100
commit803df8492dd0ecfe7368c279d1f4df2d4fe18fe2 (patch)
tree7c6db549c4e72e3ff30876b16659d62f0df6f1d1
parentfc4d2c7784184a01bdbf9d428fe22aed4039b159 (diff)
downloademacs-803df8492dd0ecfe7368c279d1f4df2d4fe18fe2.tar.gz
emacs-803df8492dd0ecfe7368c279d1f4df2d4fe18fe2.zip
* net/shr.el (shr-make-table-1): dom.el changes for table rendering.
-rw-r--r--lisp/ChangeLog2
-rw-r--r--lisp/net/shr.el7
2 files changed, 6 insertions, 3 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 4884d5ca9c1..d0d44dfd49a 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,5 +1,7 @@
12014-11-26 Lars Magne Ingebrigtsen <larsi@gnus.org> 12014-11-26 Lars Magne Ingebrigtsen <larsi@gnus.org>
2 2
3 * net/shr.el (shr-make-table-1): dom.el changes for table rendering.
4
3 * dom.el (dom-by-tag): Use `equal' for comparisons so that tags 5 * dom.el (dom-by-tag): Use `equal' for comparisons so that tags
4 can be strings. 6 can be strings.
5 (dom-elements): Protect against non-text nodes. 7 (dom-elements): Protect against non-text nodes.
diff --git a/lisp/net/shr.el b/lisp/net/shr.el
index 22bceeb9ecc..f44ecc2bdd3 100644
--- a/lisp/net/shr.el
+++ b/lisp/net/shr.el
@@ -1582,7 +1582,7 @@ The preference is a float determined from `shr-prefer-media-type'."
1582 (shr-inhibit-decoration (not fill)) 1582 (shr-inhibit-decoration (not fill))
1583 (rowspans (make-vector (length widths) 0)) 1583 (rowspans (make-vector (length widths) 0))
1584 width colspan) 1584 width colspan)
1585 (dolist (row (dom-children dom)) 1585 (dolist (row (dom-non-text-children dom))
1586 (when (eq (dom-tag row) 'tr) 1586 (when (eq (dom-tag row) 'tr)
1587 (let ((tds nil) 1587 (let ((tds nil)
1588 (columns (dom-children row)) 1588 (columns (dom-children row))
@@ -1731,7 +1731,7 @@ The preference is a float determined from `shr-prefer-media-type'."
1731;; Return a summary of the number and shape of the TDs in the table. 1731;; Return a summary of the number and shape of the TDs in the table.
1732(defun shr-column-specs (dom) 1732(defun shr-column-specs (dom)
1733 (let ((columns (make-vector (shr-max-columns dom) 1))) 1733 (let ((columns (make-vector (shr-max-columns dom) 1)))
1734 (dolist (row (dom-children dom)) 1734 (dolist (row (dom-non-text-children dom))
1735 (when (eq (dom-tag row) 'tr) 1735 (when (eq (dom-tag row) 'tr)
1736 (let ((i 0)) 1736 (let ((i 0))
1737 (dolist (column (dom-children row)) 1737 (dolist (column (dom-children row))
@@ -1757,7 +1757,8 @@ The preference is a float determined from `shr-prefer-media-type'."
1757(defun shr-max-columns (dom) 1757(defun shr-max-columns (dom)
1758 (let ((max 0)) 1758 (let ((max 0))
1759 (dolist (row (dom-children dom)) 1759 (dolist (row (dom-children dom))
1760 (when (eq (dom-tag row) 'tr) 1760 (when (and (not (stringp row))
1761 (eq (dom-tag row) 'tr))
1761 (setq max (max max (+ (shr-count row 'td) 1762 (setq max (max max (+ (shr-count row 'td)
1762 (shr-count row 'th)))))) 1763 (shr-count row 'th))))))
1763 max)) 1764 max))