summaryrefslogtreecommitdiff
path: root/xinclude.c
diff options
context:
space:
mode:
authorWilliam M. Brack <wbrack@src.gnome.org>2004-02-08 04:12:49 +0000
committerWilliam M. Brack <wbrack@src.gnome.org>2004-02-08 04:12:49 +0000
commit95af594b0bd28ad8847de96ec00ff9244bd94da7 (patch)
treee1c5e8e38c37fbce11f797759a8bc7ab44e7b728 /xinclude.c
parent6bdacd7aee43a318575ffbb2b156c7c180d926ff (diff)
downloadlibxml2-95af594b0bd28ad8847de96ec00ff9244bd94da7.tar.gz
added a small hack to fix interference between my fixes for bugs 132585
* xinclude.c: added a small hack to fix interference between my fixes for bugs 132585 and 132588. * python/libxml.c: fixed problem with serialization of namespace reported on the mailing list by Anthony Carrico
Diffstat (limited to 'xinclude.c')
-rw-r--r--xinclude.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/xinclude.c b/xinclude.c
index d1c816f3..a58a7791 100644
--- a/xinclude.c
+++ b/xinclude.c
@@ -58,6 +58,7 @@ struct _xmlXIncludeRef {
int xml; /* xml or txt */
int count; /* how many refs use that specific doc */
xmlXPathObjectPtr xptr; /* the xpointer if needed */
+ int emptyFb; /* flag to show fallback empty */
};
struct _xmlXIncludeCtxt {
@@ -1795,6 +1796,7 @@ xmlXIncludeLoadFallback(xmlXIncludeCtxtPtr ctxt, xmlNodePtr fallback, int nr) {
ctxt->incTab[nr]->inc = xmlCopyNodeList(fallback->children);
} else {
ctxt->incTab[nr]->inc = NULL;
+ ctxt->incTab[nr]->emptyFb = 1; /* flag empty callback */
}
return(ret);
}
@@ -2208,7 +2210,9 @@ xmlXIncludeDoProcess(xmlXIncludeCtxtPtr ctxt, xmlDocPtr doc, xmlNodePtr tree) {
*
*/
for (i = ctxt->incBase;i < ctxt->incNr; i++) {
- if ((ctxt->incTab[i]->inc != NULL) || (ctxt->incTab[i]->xptr != NULL))
+ if ((ctxt->incTab[i]->inc != NULL) ||
+ (ctxt->incTab[i]->xptr != NULL) ||
+ (ctxt->incTab[i]->emptyFb != 0)) /* (empty fallback) */
xmlXIncludeIncludeNode(ctxt, i);
}