store the line numbder in element->content, may break some software, need
* DOCBparser.c HTMLparser.c HTMLtree.c SAX.c debugXML.c parser.c
tree.c xpointer.c: store the line numbder in element->content,
may break some software, need a configuration mechanism
Daniel
diff --git a/xpointer.c b/xpointer.c
index c4d9720..5192fe5 100644
--- a/xpointer.c
+++ b/xpointer.c
@@ -1421,7 +1421,8 @@
}
} else if ((cur == start) &&
(list == NULL) /* looks superfluous but ... */ ) {
- if (cur->type == XML_TEXT_NODE) {
+ if ((cur->type == XML_TEXT_NODE) ||
+ (cur->type == XML_CDATA_SECTION_NODE)) {
const xmlChar *content = cur->content;
if (content == NULL) {
@@ -2317,7 +2318,8 @@
* We should have a text (or cdata) node ...
*/
len = 0;
- if (cur->content != NULL) {
+ if ((cur->type != XML_ELEMENT_NODE) &&
+ (cur->content != NULL)) {
#ifndef XML_USE_BUFFER_CONTENT
len = xmlStrlen(cur->content);
#else
@@ -2383,7 +2385,8 @@
while (stringlen > 0) {
if ((cur == *end) && (pos + stringlen > *endindex))
return(0);
- if (cur->content != NULL) {
+
+ if ((cur->type != XML_ELEMENT_NODE) && (cur->content != NULL)) {
#ifndef XML_USE_BUFFER_CONTENT
len = xmlStrlen(cur->content);
#else
@@ -2481,7 +2484,7 @@
stringlen = xmlStrlen(string);
while (cur != NULL) {
- if (cur->content != NULL) {
+ if ((cur->type != XML_ELEMENT_NODE) && (cur->content != NULL)) {
#ifndef XML_USE_BUFFER_CONTENT
len = xmlStrlen(cur->content);
#else
@@ -2578,7 +2581,8 @@
while (cur != NULL) {
if (cur->last != NULL)
cur = cur->last;
- else if (cur->content != NULL) {
+ else if ((cur->type != XML_ELEMENT_NODE) &&
+ (cur->content != NULL)) {
#ifndef XML_USE_BUFFER_CONTENT
len = xmlStrlen(cur->content);
#else