aboutsummaryrefslogtreecommitdiffstats
path: root/src/xml.c
diff options
context:
space:
mode:
authorJoakim Verona2011-06-16 00:22:07 +0200
committerJoakim Verona2011-06-16 00:22:07 +0200
commita7513ade3bc0fe79430d5541d88c9dcda0932bec (patch)
tree4383951ba698a11e9f8933a9d8c72e00aa872a10 /src/xml.c
parent4bd51ad5c3445b644dfb017d5b57b10a90aa325f (diff)
parent4bba86e6210a74326e843a8fdc8409127105e1fe (diff)
downloademacs-a7513ade3bc0fe79430d5541d88c9dcda0932bec.tar.gz
emacs-a7513ade3bc0fe79430d5541d88c9dcda0932bec.zip
merge from upstream
Diffstat (limited to 'src/xml.c')
-rw-r--r--src/xml.c18
1 files changed, 10 insertions, 8 deletions
diff --git a/src/xml.c b/src/xml.c
index 16907d4b44a..63041c96b24 100644
--- a/src/xml.c
+++ b/src/xml.c
@@ -28,11 +28,12 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
28#include "lisp.h" 28#include "lisp.h"
29#include "buffer.h" 29#include "buffer.h"
30 30
31Lisp_Object make_dom (xmlNode *node) 31static Lisp_Object
32make_dom (xmlNode *node)
32{ 33{
33 if (node->type == XML_ELEMENT_NODE) 34 if (node->type == XML_ELEMENT_NODE)
34 { 35 {
35 Lisp_Object result = Fcons (intern (node->name), Qnil); 36 Lisp_Object result = Fcons (intern ((char *) node->name), Qnil);
36 xmlNode *child; 37 xmlNode *child;
37 xmlAttr *property; 38 xmlAttr *property;
38 Lisp_Object plist = Qnil; 39 Lisp_Object plist = Qnil;
@@ -44,8 +45,9 @@ Lisp_Object make_dom (xmlNode *node)
44 if (property->children && 45 if (property->children &&
45 property->children->content) 46 property->children->content)
46 { 47 {
47 plist = Fcons (Fcons (intern (property->name), 48 char *content = (char *) property->children->content;
48 build_string (property->children->content)), 49 plist = Fcons (Fcons (intern ((char *) property->name),
50 build_string (content)),
49 plist); 51 plist);
50 } 52 }
51 property = property->next; 53 property = property->next;
@@ -65,7 +67,7 @@ Lisp_Object make_dom (xmlNode *node)
65 else if (node->type == XML_TEXT_NODE || node->type == XML_CDATA_SECTION_NODE) 67 else if (node->type == XML_TEXT_NODE || node->type == XML_CDATA_SECTION_NODE)
66 { 68 {
67 if (node->content) 69 if (node->content)
68 return build_string (node->content); 70 return build_string ((char *) node->content);
69 else 71 else
70 return Qnil; 72 return Qnil;
71 } 73 }
@@ -102,16 +104,16 @@ parse_region (Lisp_Object start, Lisp_Object end, Lisp_Object base_url, int html
102 bytes = CHAR_TO_BYTE (iend) - CHAR_TO_BYTE (istart); 104 bytes = CHAR_TO_BYTE (iend) - CHAR_TO_BYTE (istart);
103 105
104 if (htmlp) 106 if (htmlp)
105 doc = htmlReadMemory (BYTE_POS_ADDR (CHAR_TO_BYTE (istart)), 107 doc = htmlReadMemory ((char *) BYTE_POS_ADDR (CHAR_TO_BYTE (istart)),
106 bytes, burl, "utf-8", 108 bytes, burl, "utf-8",
107 HTML_PARSE_RECOVER|HTML_PARSE_NONET| 109 HTML_PARSE_RECOVER|HTML_PARSE_NONET|
108 HTML_PARSE_NOWARNING|HTML_PARSE_NOERROR| 110 HTML_PARSE_NOWARNING|HTML_PARSE_NOERROR|
109 HTML_PARSE_NOBLANKS); 111 HTML_PARSE_NOBLANKS);
110 else 112 else
111 doc = xmlReadMemory (BYTE_POS_ADDR (CHAR_TO_BYTE (istart)), 113 doc = xmlReadMemory ((char *) BYTE_POS_ADDR (CHAR_TO_BYTE (istart)),
112 bytes, burl, "utf-8", 114 bytes, burl, "utf-8",
113 XML_PARSE_NONET|XML_PARSE_NOWARNING| 115 XML_PARSE_NONET|XML_PARSE_NOWARNING|
114 XML_PARSE_NOERROR); 116 XML_PARSE_NOBLANKS |XML_PARSE_NOERROR);
115 117
116 if (doc != NULL) 118 if (doc != NULL)
117 { 119 {