diff options
Diffstat (limited to 'src/xml.c')
| -rw-r--r-- | src/xml.c | 9 |
1 files changed, 5 insertions, 4 deletions
| @@ -1,5 +1,5 @@ | |||
| 1 | /* Interface to libxml2. | 1 | /* Interface to libxml2. |
| 2 | Copyright (C) 2010 Free Software Foundation, Inc. | 2 | Copyright (C) 2010-2011 Free Software Foundation, Inc. |
| 3 | 3 | ||
| 4 | This file is part of GNU Emacs. | 4 | This file is part of GNU Emacs. |
| 5 | 5 | ||
| @@ -62,7 +62,7 @@ Lisp_Object make_dom (xmlNode *node) | |||
| 62 | 62 | ||
| 63 | return Fnreverse (result); | 63 | return Fnreverse (result); |
| 64 | } | 64 | } |
| 65 | else if (node->type == XML_TEXT_NODE) | 65 | else if (node->type == XML_TEXT_NODE || node->type == XML_CDATA_SECTION_NODE) |
| 66 | { | 66 | { |
| 67 | if (node->content) | 67 | if (node->content) |
| 68 | return build_string (node->content); | 68 | return build_string (node->content); |
| @@ -96,7 +96,7 @@ parse_region (Lisp_Object start, Lisp_Object end, Lisp_Object base_url, int html | |||
| 96 | if (! NILP (base_url)) | 96 | if (! NILP (base_url)) |
| 97 | { | 97 | { |
| 98 | CHECK_STRING (base_url); | 98 | CHECK_STRING (base_url); |
| 99 | burl = SDATA (base_url); | 99 | burl = SSDATA (base_url); |
| 100 | } | 100 | } |
| 101 | 101 | ||
| 102 | bytes = CHAR_TO_BYTE (iend) - CHAR_TO_BYTE (istart); | 102 | bytes = CHAR_TO_BYTE (iend) - CHAR_TO_BYTE (istart); |
| @@ -105,7 +105,8 @@ parse_region (Lisp_Object start, Lisp_Object end, Lisp_Object base_url, int html | |||
| 105 | doc = htmlReadMemory (BYTE_POS_ADDR (CHAR_TO_BYTE (istart)), | 105 | doc = htmlReadMemory (BYTE_POS_ADDR (CHAR_TO_BYTE (istart)), |
| 106 | bytes, burl, "utf-8", | 106 | bytes, burl, "utf-8", |
| 107 | HTML_PARSE_RECOVER|HTML_PARSE_NONET| | 107 | HTML_PARSE_RECOVER|HTML_PARSE_NONET| |
| 108 | HTML_PARSE_NOWARNING|HTML_PARSE_NOERROR); | 108 | HTML_PARSE_NOWARNING|HTML_PARSE_NOERROR| |
| 109 | HTML_PARSE_NOBLANKS); | ||
| 109 | else | 110 | else |
| 110 | doc = xmlReadMemory (BYTE_POS_ADDR (CHAR_TO_BYTE (istart)), | 111 | doc = xmlReadMemory (BYTE_POS_ADDR (CHAR_TO_BYTE (istart)), |
| 111 | bytes, burl, "utf-8", | 112 | bytes, burl, "utf-8", |