Commit aae10527 authored by William M. Brack's avatar William M. Brack
Browse files

fixed problem with "recursive" include (fallback contains another include

* xinclude.c: fixed problem with "recursive" include (fallback
  contains another include - Bug 129969)
parent 1a9b7084
Fri Jan 2 22:58:29 HKT 2004 William Brack <wbrack@mmm.com.hk>
* xinclude.c: fixed problem with "recursive" include (fallback
contains another include - Bug 129969)
Fri Jan 2 11:40:06 CET 2004 Daniel Veillard <daniel@veillard.com>
 
* SAX2.c: found and fixed a bug misallocating some non
......
......@@ -1760,11 +1760,26 @@ loaded:
*/
static int
xmlXIncludeLoadFallback(xmlXIncludeCtxtPtr ctxt, xmlNodePtr fallback, int nr) {
xmlXIncludeCtxtPtr newctxt;
int ret = 0;
if ((fallback == NULL) || (ctxt == NULL))
return(-1);
/*
* It's possible that the fallback also has 'includes'
* (Bug 129969), so we re-process the fallback just in case
*/
newctxt = xmlXIncludeNewContext(ctxt->doc);
if (newctxt == NULL)
return (-1);
xmlXIncludeSetFlags(newctxt, ctxt->parseFlags);
ret = xmlXIncludeDoProcess(newctxt, ctxt->doc, fallback->children);
if ((ret >=0) && (ctxt->nbErrors > 0))
ret = -1;
xmlXIncludeFreeContext(newctxt);
ctxt->incTab[nr]->inc = xmlCopyNodeList(fallback->children);
return(0);
return(ret);
}
/************************************************************************
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment