aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLars Magne Ingebrigtsen2014-12-04 14:42:57 +0100
committerLars Magne Ingebrigtsen2014-12-04 14:42:57 +0100
commit64755ed3add17e10a4bd3e4e270cae51cfe1d8c7 (patch)
tree7db38964d2d08c594664f2e7e33e440789191604
parentf1827846d715cfef05afe52ad2a9df2289df6952 (diff)
downloademacs-64755ed3add17e10a4bd3e4e270cae51cfe1d8c7.tar.gz
emacs-64755ed3add17e10a4bd3e4e270cae51cfe1d8c7.zip
* net/shr.el (shr--extract-best-source): Ignore non-text children.
-rw-r--r--lisp/ChangeLog4
-rw-r--r--lisp/net/shr.el4
2 files changed, 6 insertions, 2 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 157b2b45f98..1f0d7520b60 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,7 @@
12014-12-04 Lars Magne Ingebrigtsen <larsi@gnus.org>
2
3 * net/shr.el (shr--extract-best-source): Ignore non-text children.
4
12014-12-04 Eli Zaretskii <eliz@gnu.org> 52014-12-04 Eli Zaretskii <eliz@gnu.org>
2 6
3 Implement copying of a buffer portion while preserving visual order. 7 Implement copying of a buffer portion while preserving visual order.
diff --git a/lisp/net/shr.el b/lisp/net/shr.el
index 3ad8bd17777..a2a122cf5d8 100644
--- a/lisp/net/shr.el
+++ b/lisp/net/shr.el
@@ -1184,7 +1184,7 @@ The preference is a float determined from `shr-prefer-media-type'."
1184 "Extract the best `:src' property from <source> blocks in DOM." 1184 "Extract the best `:src' property from <source> blocks in DOM."
1185 (setq pref (or pref -1.0)) 1185 (setq pref (or pref -1.0))
1186 (let (new-pref) 1186 (let (new-pref)
1187 (dolist (elem (dom-children dom)) 1187 (dolist (elem (dom-non-text-children dom))
1188 (when (and (eq (dom-tag elem) 'source) 1188 (when (and (eq (dom-tag elem) 'source)
1189 (< pref 1189 (< pref
1190 (setq new-pref 1190 (setq new-pref
@@ -1193,7 +1193,7 @@ The preference is a float determined from `shr-prefer-media-type'."
1193 url (dom-attr elem 'src)) 1193 url (dom-attr elem 'src))
1194 ;; libxml's html parser isn't HTML5 compliant and non terminated 1194 ;; libxml's html parser isn't HTML5 compliant and non terminated
1195 ;; source tags might end up as children. So recursion it is... 1195 ;; source tags might end up as children. So recursion it is...
1196 (dolist (child (dom-children elem)) 1196 (dolist (child (dom-non-text-children elem))
1197 (when (eq (dom-tag child) 'source) 1197 (when (eq (dom-tag child) 'source)
1198 (let ((ret (shr--extract-best-source (list child) url pref))) 1198 (let ((ret (shr--extract-best-source (list child) url pref)))
1199 (when (< pref (cdr ret)) 1199 (when (< pref (cdr ret))