Result Value Tree are now generated with a document root node not an
authorDaniel Veillard <veillard@src.gnome.org>
Mon, 24 Mar 2003 21:38:13 +0000 (21:38 +0000)
committerDaniel Veillard <veillard@src.gnome.org>
Mon, 24 Mar 2003 21:38:13 +0000 (21:38 +0000)
* libxslt/pattern.c libxslt/transform.c libxslt/variables.c:
  Result Value Tree are now generated with a document root node
  not an element, it's quite cleaner.
* configure.in libxslt.spec.in NEWS: But this requires libxml2-2.5.5
  also prepared for libxslt-1.0.28 release
* doc/*: updated and regenerated the docs
Daniel

15 files changed:
ChangeLog
NEWS
configure.in
doc/html/index.sgml
doc/html/libxslt-numbersinternals.html
doc/html/libxslt-xsltinternals.html
doc/libxslt-decl.txt
doc/libxslt-sections.txt
doc/news.html
doc/python.html
doc/xslt.html
libxslt.spec.in
libxslt/pattern.c
libxslt/transform.c
libxslt/variables.c

index 921dcdd..2d37e89 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+Mon Mar 24 22:30:00 CET 2003 Daniel Veillard <daniel@veillard.com>
+
+       * libxslt/pattern.c libxslt/transform.c libxslt/variables.c:
+         Result Value Tree are now generated with a document root node
+         not an element, it's quite cleaner.
+       * configure.in libxslt.spec.in NEWS: But this requires libxml2-2.5.5
+         also prepared for libxslt-1.0.28 release
+       * doc/*: updated and regenerated the docs
+
 Mon Mar 24 15:01:07 CET 2003 Daniel Veillard <daniel@veillard.com>
 
        * libxslt/pattern.c libxslt/transform.c libxslt/variables.c:
diff --git a/NEWS b/NEWS
index c3efb11..0b2106e 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -11,10 +11,18 @@ http://cvs.gnome.org/lxr/source/libxslt/ChangeLog
  file
 for a really accurate description:
 
+1.0.28: Mar 24 2003:
+   - fixed node() in patterns semantic.
+   - fixed a memory access problem in format-number()
+   - fixed stack overflow in recursive global variable or params
+   - cleaned up Result Value Tree handling, and fixed a couple of old bugs
+    in the process
+
+
 1.0.27: Feb 24 2003:
    - bug fixes: spurious xmlns:nsX="" generation, serialization bug (in
     libxml2), a namespace copy problem, errors in the RPM spec prereqs
-   - Windows path canonicalization and document cache fix (Igor) 
+   - Windows path canonicalization and document cache fix (Igor)
 
 
 1.0.26: Feb 10 2003:
index 139322a..78c5adf 100644 (file)
@@ -6,12 +6,12 @@ dnl libexslt is an extension
 dnl
 LIBXSLT_MAJOR_VERSION=1
 LIBXSLT_MINOR_VERSION=0
-LIBXSLT_MICRO_VERSION=27
+LIBXSLT_MICRO_VERSION=28
 PACKAGE=libxslt
 LIBEXSLT_MAJOR_VERSION=0
 LIBEXSLT_MINOR_VERSION=7
-LIBEXSLT_MICRO_VERSION=18
-LIBXML_REQUIRED_VERSION=2.5.2
+LIBEXSLT_MICRO_VERSION=19
+LIBXML_REQUIRED_VERSION=2.5.5
 
 
 LIBXSLT_VERSION=$LIBXSLT_MAJOR_VERSION.$LIBXSLT_MINOR_VERSION.$LIBXSLT_MICRO_VERSION
index 4dc35ab..5982503 100644 (file)
 <ANCHOR id ="XSLTPARSESTYLESHEETPROCESS" href="libxslt/libxslt-xsltinternals.html#XSLTPARSESTYLESHEETPROCESS">
 <ANCHOR id ="XSLTPARSESTYLESHEETOUTPUT" href="libxslt/libxslt-xsltinternals.html#XSLTPARSESTYLESHEETOUTPUT">
 <ANCHOR id ="XSLTPARSESTYLESHEETDOC" href="libxslt/libxslt-xsltinternals.html#XSLTPARSESTYLESHEETDOC">
+<ANCHOR id ="XSLTPARSESTYLESHEETIMPORTEDDOC" href="libxslt/libxslt-xsltinternals.html#XSLTPARSESTYLESHEETIMPORTEDDOC">
 <ANCHOR id ="XSLTLOADSTYLESHEETPI" href="libxslt/libxslt-xsltinternals.html#XSLTLOADSTYLESHEETPI">
 <ANCHOR id ="XSLTNUMBERFORMAT" href="libxslt/libxslt-xsltinternals.html#XSLTNUMBERFORMAT">
 <ANCHOR id ="XSLTFORMATNUMBERCONVERSION" href="libxslt/libxslt-xsltinternals.html#XSLTFORMATNUMBERCONVERSION">
index b859239..14ea311 100644 (file)
@@ -111,7 +111,7 @@ NAME="LIBXSLT-NUMBERSINTERNALS"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN6015"
+NAME="AEN6039"
 ></A
 ><H2
 >Name</H2
@@ -119,7 +119,7 @@ NAME="AEN6015"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN6018"
+NAME="AEN6042"
 ></A
 ><H2
 >Synopsis</H2
@@ -157,7 +157,7 @@ HREF="libxslt-numbersinternals.html#XSLTFORMATNUMBERINFOPTR"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN6025"
+NAME="AEN6049"
 ></A
 ><H2
 >Description</H2
@@ -167,14 +167,14 @@ NAME="AEN6025"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN6028"
+NAME="AEN6052"
 ></A
 ><H2
 >Details</H2
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6030"
+NAME="AEN6054"
 ></A
 ><H3
 ><A
@@ -214,7 +214,7 @@ CLASS="PROGRAMLISTING"
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6036"
+NAME="AEN6060"
 ></A
 ><H3
 ><A
@@ -240,7 +240,7 @@ CLASS="PROGRAMLISTING"
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6041"
+NAME="AEN6065"
 ></A
 ><H3
 ><A
@@ -278,7 +278,7 @@ CLASS="PROGRAMLISTING"
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6047"
+NAME="AEN6071"
 ></A
 ><H3
 ><A
index d6c6208..ea9cc34 100644 (file)
@@ -393,6 +393,17 @@ HREF="XMLDOCPTR"
 HREF="libxslt-xsltinternals.html#XSLTSTYLESHEETPTR"
 >xsltStylesheetPtr</A
 > <A
+HREF="libxslt-xsltinternals.html#XSLTPARSESTYLESHEETIMPORTEDDOC"
+>xsltParseStylesheetImportedDoc</A
+>
+                                            (<GTKDOCLINK
+HREF="XMLDOCPTR"
+>xmlDocPtr</GTKDOCLINK
+> doc);
+<A
+HREF="libxslt-xsltinternals.html#XSLTSTYLESHEETPTR"
+>xsltStylesheetPtr</A
+> <A
 HREF="libxslt-xsltinternals.html#XSLTLOADSTYLESHEETPI"
 >xsltLoadStylesheetPI</A
 >      (<GTKDOCLINK
@@ -468,7 +479,7 @@ HREF="libxslt-xsltinternals.html#XSLTTRANSFORMCONTEXTPTR"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN5396"
+NAME="AEN5399"
 ></A
 ><H2
 >Description</H2
@@ -478,14 +489,14 @@ NAME="AEN5396"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN5399"
+NAME="AEN5402"
 ></A
 ><H2
 >Details</H2
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5401"
+NAME="AEN5404"
 ></A
 ><H3
 ><A
@@ -513,7 +524,7 @@ CLASS="PROGRAMLISTING"
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5407"
+NAME="AEN5410"
 ></A
 ><H3
 ><A
@@ -541,7 +552,7 @@ CLASS="PROGRAMLISTING"
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5413"
+NAME="AEN5416"
 ></A
 ><H3
 ><A
@@ -573,7 +584,7 @@ CLASS="PROGRAMLISTING"
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5419"
+NAME="AEN5422"
 ></A
 ><H3
 ><A
@@ -599,7 +610,7 @@ CLASS="PROGRAMLISTING"
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5424"
+NAME="AEN5427"
 ></A
 ><H3
 ><A
@@ -626,7 +637,7 @@ CLASS="PROGRAMLISTING"
 ><DIV
 CLASS="INFORMALTABLE"
 ><A
-NAME="AEN5430"
+NAME="AEN5433"
 ></A
 ><P
 ></P
@@ -681,7 +692,7 @@ VALIGN="TOP"
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5443"
+NAME="AEN5446"
 ></A
 ><H3
 ><A
@@ -708,7 +719,7 @@ CLASS="PROGRAMLISTING"
 ><DIV
 CLASS="INFORMALTABLE"
 ><A
-NAME="AEN5449"
+NAME="AEN5452"
 ></A
 ><P
 ></P
@@ -763,7 +774,7 @@ VALIGN="TOP"
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5462"
+NAME="AEN5465"
 ></A
 ><H3
 ><A
@@ -790,7 +801,7 @@ CLASS="PROGRAMLISTING"
 ><DIV
 CLASS="INFORMALTABLE"
 ><A
-NAME="AEN5468"
+NAME="AEN5471"
 ></A
 ><P
 ></P
@@ -845,7 +856,7 @@ VALIGN="TOP"
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5481"
+NAME="AEN5484"
 ></A
 ><H3
 ><A
@@ -891,7 +902,7 @@ CLASS="PROGRAMLISTING"
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5487"
+NAME="AEN5490"
 ></A
 ><H3
 ><A
@@ -917,7 +928,7 @@ CLASS="PROGRAMLISTING"
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5492"
+NAME="AEN5495"
 ></A
 ><H3
 ><A
@@ -961,7 +972,7 @@ CLASS="PROGRAMLISTING"
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5498"
+NAME="AEN5501"
 ></A
 ><H3
 ><A
@@ -987,7 +998,7 @@ CLASS="PROGRAMLISTING"
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5503"
+NAME="AEN5506"
 ></A
 ><H3
 ><A
@@ -1020,7 +1031,7 @@ CLASS="PROGRAMLISTING"
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5509"
+NAME="AEN5512"
 ></A
 ><H3
 ><A
@@ -1046,7 +1057,7 @@ CLASS="PROGRAMLISTING"
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5514"
+NAME="AEN5517"
 ></A
 ><H3
 ><A
@@ -1140,7 +1151,7 @@ CLASS="PROGRAMLISTING"
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5519"
+NAME="AEN5522"
 ></A
 ><H3
 ><A
@@ -1166,7 +1177,7 @@ CLASS="PROGRAMLISTING"
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5524"
+NAME="AEN5527"
 ></A
 ><H3
 ><A
@@ -1203,7 +1214,7 @@ designed to be extended by extension implementors.</P
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5530"
+NAME="AEN5533"
 ></A
 ><H3
 ><A
@@ -1229,7 +1240,7 @@ CLASS="PROGRAMLISTING"
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5535"
+NAME="AEN5538"
 ></A
 ><H3
 ><A
@@ -1272,7 +1283,7 @@ stylesheet language like xsl:if or xsl:apply-templates.</P
 ><DIV
 CLASS="INFORMALTABLE"
 ><A
-NAME="AEN5545"
+NAME="AEN5548"
 ></A
 ><P
 ></P
@@ -1361,7 +1372,7 @@ VALIGN="TOP"
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5566"
+NAME="AEN5569"
 ></A
 ><H3
 ><A
@@ -1396,7 +1407,7 @@ HREF="XMLNODEPTR"
 ><DIV
 CLASS="INFORMALTABLE"
 ><A
-NAME="AEN5574"
+NAME="AEN5577"
 ></A
 ><P
 ></P
@@ -1468,7 +1479,7 @@ VALIGN="TOP"
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5591"
+NAME="AEN5594"
 ></A
 ><H3
 ><A
@@ -1517,7 +1528,7 @@ CLASS="PROGRAMLISTING"
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5596"
+NAME="AEN5599"
 ></A
 ><H3
 ><A
@@ -1550,7 +1561,7 @@ HREF="libxslt-xsltinternals.html#XSLTELEMPRECOMP"
 ><DIV
 CLASS="INFORMALTABLE"
 ><A
-NAME="AEN5604"
+NAME="AEN5607"
 ></A
 ><P
 ></P
@@ -1591,7 +1602,7 @@ HREF="libxslt-xsltinternals.html#XSLTELEMPRECOMP"
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5614"
+NAME="AEN5617"
 ></A
 ><H3
 ><A
@@ -1669,7 +1680,7 @@ precomputed data.</P
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5620"
+NAME="AEN5623"
 ></A
 ><H3
 ><A
@@ -1695,7 +1706,7 @@ CLASS="PROGRAMLISTING"
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5625"
+NAME="AEN5628"
 ></A
 ><H3
 ><A
@@ -1730,7 +1741,7 @@ CLASS="PROGRAMLISTING"
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5630"
+NAME="AEN5633"
 ></A
 ><H3
 ><A
@@ -1756,7 +1767,7 @@ CLASS="PROGRAMLISTING"
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5635"
+NAME="AEN5638"
 ></A
 ><H3
 ><A
@@ -1880,7 +1891,7 @@ CLASS="PROGRAMLISTING"
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5640"
+NAME="AEN5643"
 ></A
 ><H3
 ><A
@@ -1906,7 +1917,7 @@ CLASS="PROGRAMLISTING"
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5645"
+NAME="AEN5648"
 ></A
 ><H3
 ><A
@@ -1936,7 +1947,7 @@ CLASS="PROGRAMLISTING"
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5650"
+NAME="AEN5653"
 ></A
 ><H3
 ><A
@@ -1966,7 +1977,7 @@ CLASS="PROGRAMLISTING"
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5655"
+NAME="AEN5658"
 ></A
 ><H3
 ><A
@@ -1995,7 +2006,7 @@ Will return from the function.</P
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5661"
+NAME="AEN5664"
 ></A
 ><H3
 ><A
@@ -2024,7 +2035,7 @@ Will goto the error: label.</P
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5667"
+NAME="AEN5670"
 ></A
 ><H3
 ><A
@@ -2053,7 +2064,7 @@ Will return from the function with a 0 value.</P
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5673"
+NAME="AEN5676"
 ></A
 ><H3
 ><A
@@ -2083,7 +2094,7 @@ HREF="libxslt-xsltinternals.html#XSLTSTYLESHEETPTR"
 ><DIV
 CLASS="INFORMALTABLE"
 ><A
-NAME="AEN5680"
+NAME="AEN5683"
 ></A
 ><P
 ></P
@@ -2122,7 +2133,7 @@ VALIGN="TOP"
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5689"
+NAME="AEN5692"
 ></A
 ><H3
 ><A
@@ -2155,7 +2166,7 @@ HREF="XMLCHAR"
 ><DIV
 CLASS="INFORMALTABLE"
 ><A
-NAME="AEN5697"
+NAME="AEN5700"
 ></A
 ><P
 ></P
@@ -2211,7 +2222,7 @@ VALIGN="TOP"
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5710"
+NAME="AEN5713"
 ></A
 ><H3
 ><A
@@ -2246,7 +2257,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="INFORMALTABLE"
 ><A
-NAME="AEN5718"
+NAME="AEN5721"
 ></A
 ><P
 ></P
@@ -2284,7 +2295,7 @@ VALIGN="TOP"
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5727"
+NAME="AEN5730"
 ></A
 ><H3
 ><A
@@ -2314,7 +2325,7 @@ HREF="XMLCHAR"
 ><DIV
 CLASS="INFORMALTABLE"
 ><A
-NAME="AEN5734"
+NAME="AEN5737"
 ></A
 ><P
 ></P
@@ -2370,7 +2381,7 @@ VALIGN="TOP"
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5747"
+NAME="AEN5750"
 ></A
 ><H3
 ><A
@@ -2405,7 +2416,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="INFORMALTABLE"
 ><A
-NAME="AEN5755"
+NAME="AEN5758"
 ></A
 ><P
 ></P
@@ -2443,7 +2454,7 @@ VALIGN="TOP"
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5764"
+NAME="AEN5767"
 ></A
 ><H3
 ><A
@@ -2481,7 +2492,7 @@ HREF="XMLCHAR"
 ><DIV
 CLASS="INFORMALTABLE"
 ><A
-NAME="AEN5773"
+NAME="AEN5776"
 ></A
 ><P
 ></P
@@ -2554,7 +2565,7 @@ VALIGN="TOP"
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5790"
+NAME="AEN5793"
 ></A
 ><H3
 ><A
@@ -2592,7 +2603,7 @@ HREF="XMLDOCPTR"
 ><DIV
 CLASS="INFORMALTABLE"
 ><A
-NAME="AEN5799"
+NAME="AEN5802"
 ></A
 ><P
 ></P
@@ -2666,7 +2677,7 @@ went right, NULL if something went amiss.</TD
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5816"
+NAME="AEN5819"
 ></A
 ><H3
 ><A
@@ -2701,7 +2712,7 @@ information related to the stylesheet output</P
 ><DIV
 CLASS="INFORMALTABLE"
 ><A
-NAME="AEN5824"
+NAME="AEN5827"
 ></A
 ><P
 ></P
@@ -2756,7 +2767,7 @@ VALIGN="TOP"
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5837"
+NAME="AEN5840"
 ></A
 ><H3
 ><A
@@ -2789,7 +2800,98 @@ HREF="XMLDOCPTR"
 ><DIV
 CLASS="INFORMALTABLE"
 ><A
-NAME="AEN5845"
+NAME="AEN5848"
+></A
+><P
+></P
+><TABLE
+BORDER="0"
+WIDTH="100%"
+BGCOLOR="#FFD0D0"
+CELLSPACING="0"
+CELLPADDING="4"
+CLASS="CALSTABLE"
+><TBODY
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>doc</I
+></TT
+>&nbsp;:</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>  and xmlDoc parsed XML</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><SPAN
+CLASS="emphasis"
+><I
+CLASS="EMPHASIS"
+>Returns</I
+></SPAN
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>a new XSLT stylesheet structure.</TD
+></TR
+></TBODY
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN5861"
+></A
+><H3
+><A
+NAME="XSLTPARSESTYLESHEETIMPORTEDDOC"
+></A
+>xsltParseStylesheetImportedDoc ()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+><A
+HREF="libxslt-xsltinternals.html#XSLTSTYLESHEETPTR"
+>xsltStylesheetPtr</A
+> xsltParseStylesheetImportedDoc
+                                            (<GTKDOCLINK
+HREF="XMLDOCPTR"
+>xmlDocPtr</GTKDOCLINK
+> doc);</PRE
+></TD
+></TR
+></TABLE
+><P
+>parse an XSLT stylesheet building the associated structures
+except the processing not needed for imported documents.</P
+><P
+></P
+><DIV
+CLASS="INFORMALTABLE"
+><A
+NAME="AEN5869"
 ></A
 ><P
 ></P
@@ -2845,7 +2947,7 @@ VALIGN="TOP"
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5858"
+NAME="AEN5882"
 ></A
 ><H3
 ><A
@@ -2889,7 +2991,7 @@ transformation is done.</P
 ><DIV
 CLASS="INFORMALTABLE"
 ><A
-NAME="AEN5867"
+NAME="AEN5891"
 ></A
 ><P
 ></P
@@ -2945,7 +3047,7 @@ VALIGN="TOP"
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5880"
+NAME="AEN5904"
 ></A
 ><H3
 ><A
@@ -2983,7 +3085,7 @@ HREF="XMLNODEPTR"
 ><DIV
 CLASS="INFORMALTABLE"
 ><A
-NAME="AEN5889"
+NAME="AEN5913"
 ></A
 ><P
 ></P
@@ -3055,7 +3157,7 @@ VALIGN="TOP"
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5906"
+NAME="AEN5930"
 ></A
 ><H3
 ><A
@@ -3134,7 +3236,7 @@ HREF="NUMBER"
 ><DIV
 CLASS="INFORMALTABLE"
 ><A
-NAME="AEN5924"
+NAME="AEN5948"
 ></A
 ><P
 ></P
@@ -3241,7 +3343,7 @@ VALIGN="TOP"
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5949"
+NAME="AEN5973"
 ></A
 ><H3
 ><A
@@ -3277,7 +3379,7 @@ and process xslt:text</P
 ><DIV
 CLASS="INFORMALTABLE"
 ><A
-NAME="AEN5957"
+NAME="AEN5981"
 ></A
 ><P
 ></P
@@ -3332,7 +3434,7 @@ VALIGN="TOP"
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5970"
+NAME="AEN5994"
 ></A
 ><H3
 ><A
@@ -3363,7 +3465,7 @@ the stylesheet and return its number</P
 ><DIV
 CLASS="INFORMALTABLE"
 ><A
-NAME="AEN5977"
+NAME="AEN6001"
 ></A
 ><P
 ></P
@@ -3419,7 +3521,7 @@ VALIGN="TOP"
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5990"
+NAME="AEN6014"
 ></A
 ><H3
 ><A
@@ -3451,7 +3553,7 @@ This make sure there is a slot ready in the transformation context</P
 ><DIV
 CLASS="INFORMALTABLE"
 ><A
-NAME="AEN5997"
+NAME="AEN6021"
 ></A
 ><P
 ></P
index 9aedc8e..7f8ff1e 100644 (file)
@@ -1,14 +1,14 @@
 <MACRO>
 <NAME>LIBXSLT_DOTTED_VERSION</NAME>
-#define LIBXSLT_DOTTED_VERSION "1.0.23"
+#define LIBXSLT_DOTTED_VERSION "1.0.27"
 </MACRO>
 <MACRO>
 <NAME>LIBXSLT_VERSION</NAME>
-#define LIBXSLT_VERSION 10023
+#define LIBXSLT_VERSION 10027
 </MACRO>
 <MACRO>
 <NAME>LIBXSLT_VERSION_STRING</NAME>
-#define LIBXSLT_VERSION_STRING "10023"
+#define LIBXSLT_VERSION_STRING "10027"
 </MACRO>
 <MACRO>
 <NAME>WITH_XSLT_DEBUG</NAME>
 #define XSLT_NEED_TRIO
 </MACRO>
 <MACRO>
+<NAME>XSLT_NEED_TRIO</NAME>
+#define XSLT_NEED_TRIO
+</MACRO>
+<MACRO>
 <NAME>WITH_DEBUGGER</NAME>
 #define WITH_DEBUGGER
 </MACRO>
@@ -1146,15 +1150,15 @@ void
 </FUNCTION>
 <MACRO>
 <NAME>LIBXSLT_DOTTED_VERSION</NAME>
-#define LIBXSLT_DOTTED_VERSION "1.0.23"
+#define LIBXSLT_DOTTED_VERSION "1.0.27"
 </MACRO>
 <MACRO>
 <NAME>LIBXSLT_VERSION</NAME>
-#define LIBXSLT_VERSION 10023
+#define LIBXSLT_VERSION 10027
 </MACRO>
 <MACRO>
 <NAME>LIBXSLT_VERSION_STRING</NAME>
-#define LIBXSLT_VERSION_STRING "10023"
+#define LIBXSLT_VERSION_STRING "10027"
 </MACRO>
 <MACRO>
 <NAME>WITH_XSLT_DEBUG</NAME>
@@ -1773,6 +1777,11 @@ xsltStylesheetPtr style,xmlNodePtr cur
 xmlDocPtr doc
 </FUNCTION>
 <FUNCTION>
+<NAME>xsltParseStylesheetImportedDoc</NAME>
+<RETURNS>xsltStylesheetPtr     </RETURNS>
+xmlDocPtr doc
+</FUNCTION>
+<FUNCTION>
 <NAME>xsltLoadStylesheetPI</NAME>
 <RETURNS>xsltStylesheetPtr     </RETURNS>
 xmlDocPtr doc
index 11206c0..fdc50c8 100644 (file)
@@ -359,6 +359,7 @@ xsltDecimalFormatGetByName
 xsltParseStylesheetProcess
 xsltParseStylesheetOutput
 xsltParseStylesheetDoc
+xsltParseStylesheetImportedDoc
 xsltLoadStylesheetPI
 xsltNumberFormat
 xsltFormatNumberConversion
index 065047f..382f08d 100644 (file)
@@ -84,11 +84,19 @@ A:link, A:visited, A:active { text-decoration: underline }
 <td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd">
 <h3>CVS only : check the <a href="http://cvs.gnome.org/lxr/source/libxslt/ChangeLog">Changelog</a> file
 for a really accurate description</h3>
+<h3>1.0.28: Mar 24 2003</h3>
+<ul>
+<li>fixed node() in patterns semantic.</li>
+  <li>fixed a memory access problem in format-number()</li>
+  <li>fixed stack overflow in recursive global variable or params</li>
+  <li>cleaned up Result Value Tree handling, and fixed a couple of old bugs
+    in the process</li>
+</ul>
 <h3>1.0.27: Feb 24 2003</h3>
 <ul>
 <li>bug fixes: spurious xmlns:nsX=&quot;&quot; generation, serialization bug (in
     libxml2), a namespace copy problem, errors in the RPM spec prereqs</li>
-  <li>Windows path canonicalization and document cache fix (Igor) </li>
+  <li>Windows path canonicalization and document cache fix (Igor)</li>
 </ul>
 <h3>1.0.26: Feb 10 2003</h3>
 <ul>
index 3563e49..adae50e 100644 (file)
@@ -91,8 +91,7 @@ or libxslt wrappers or bindings:</p>
 <li>
 <a href="http://mail.gnome.org/archives/xml/2001-March/msg00014.html">Matt
     Sergeant</a> developped <a href="http://axkit.org/download/">XML::LibXML
-    and XML::LibXSLT</a>, Perl wrappers for libxml2/libxslt as part of the
-    <a href="http://axkit.com/">AxKit XML application server</a>
+    and XML::LibXSLT</a>, Perl wrappers for libxml2/libxslt as part of the <a href="http://axkit.com/">AxKit XML application server</a>
 </li>
   <li>
 <a href="mailto:dkuhlman@cutter.rexx.com">Dave Kuhlman</a> provides and
@@ -116,9 +115,8 @@ or libxslt wrappers or bindings:</p>
     for PHP</a>.</li>
   <li>
 <a href="http://savannah.gnu.org/projects/classpathx/">LibxmlJ</a> is
-      an effort to create a 100% JAXP-compatible Java wrapper for 
-      libxml2 and libxslt as part of GNU ClasspathX project.
-</li>
+    an effort to create a 100% JAXP-compatible Java wrapper for libxml2 and
+    libxslt as part of GNU ClasspathX project.</li>
 </ul>
 <p>The libxslt Python module depends on the <a href="http://xmlsoft.org/python.html">libxml2 Python</a> module.</p>
 <p>The distribution includes a set of Python bindings, which are garanteed to
index 0ffdef0..8b30b6b 100644 (file)
@@ -267,11 +267,20 @@ platform, get in touch with me to upload the package. I will keep them in the
 href="http://cvs.gnome.org/lxr/source/libxslt/ChangeLog">Changelog</a> file
 for a really accurate description</h3>
 
+<h3>1.0.28: Mar 24 2003</h3>
+<ul>
+  <li>fixed node() in patterns semantic.</li>
+  <li>fixed a memory access problem in format-number()</li>
+  <li>fixed stack overflow in recursive global variable or params</li>
+  <li>cleaned up Result Value Tree handling, and fixed a couple of old bugs
+    in the process</li>
+</ul>
+
 <h3>1.0.27: Feb 24 2003</h3>
 <ul>
   <li>bug fixes: spurious xmlns:nsX="" generation, serialization bug (in
     libxml2), a namespace copy problem, errors in the RPM spec prereqs</li>
-  <li>Windows path canonicalization and document cache fix (Igor) </li>
+  <li>Windows path canonicalization and document cache fix (Igor)</li>
 </ul>
 
 <h3>1.0.26: Feb 10 2003</h3>
@@ -859,8 +868,8 @@ or libxslt wrappers or bindings:</p>
   <li><a
     href="http://mail.gnome.org/archives/xml/2001-March/msg00014.html">Matt
     Sergeant</a> developped <a href="http://axkit.org/download/">XML::LibXML
-    and XML::LibXSLT</a>, Perl wrappers for libxml2/libxslt as part of the
-    <a href="http://axkit.com/">AxKit XML application server</a></li>
+    and XML::LibXSLT</a>, Perl wrappers for libxml2/libxslt as part of the <a
+    href="http://axkit.com/">AxKit XML application server</a></li>
   <li><a href="mailto:dkuhlman@cutter.rexx.com">Dave Kuhlman</a> provides and
     earlier version of the libxml/libxslt <a
     href="http://www.rexx.com/~dkuhlman">wrappers for Python</a></li>
@@ -882,8 +891,8 @@ or libxslt wrappers or bindings:</p>
     using <a href="http://siasl.dyndns.org/projects/projects.html">libxslt
     for PHP</a>.</li>
   <li><a href="http://savannah.gnu.org/projects/classpathx/">LibxmlJ</a> is
-      an effort to create a 100% JAXP-compatible Java wrapper for 
-      libxml2 and libxslt as part of GNU ClasspathX project.
+    an effort to create a 100% JAXP-compatible Java wrapper for libxml2 and
+    libxslt as part of GNU ClasspathX project.</li>
 </ul>
 
 <p>The libxslt Python module depends on the <a
index 31cbf70..b3bc512 100644 (file)
@@ -7,8 +7,8 @@ Group: Development/Libraries
 Source: ftp://xmlsoft.org/XSLT/libxslt-%{version}.tar.gz
 BuildRoot: %{_tmppath}/%{name}-%{version}-root
 URL: http://xmlsoft.org/XSLT/
-Requires: libxml2 >= 2.5.4
-BuildRequires: libxml2-devel >= 2.5.4
+Requires: libxml2 >= 2.5.5
+BuildRequires: libxml2-devel >= 2.5.5
 BuildRequires: python python-devel
 BuildRequires: libxml2-python
 Prefix: %{_prefix}
@@ -17,26 +17,26 @@ Docdir: %{_docdir}
 %description
 This C library allows to transform XML files into other XML files
 (or HTML, text, ...) using the standard XSLT stylesheet transformation
-mechanism. To use it you need to have a version of libxml2 >= 2.5.4
+mechanism. To use it you need to have a version of libxml2 >= 2.5.5
 installed. The xsltproc command is a command line interface to the XSLT engine
 
 %package devel
 Summary: Libraries, includes, etc. to embed the Gnome XSLT engine
 Group: Development/Libraries
 Requires: libxslt = %{version}
-Requires: libxml2-devel >= 2.5.4
+Requires: libxml2-devel >= 2.5.5
 
 %description devel
 This C library allows to transform XML files into other XML files
 (or HTML, text, ...) using the standard XSLT stylesheet transformation
-mechanism. To use it you need to have a version of libxml2 >= 2.5.4
+mechanism. To use it you need to have a version of libxml2 >= 2.5.5
 installed.
 
 %package python
 Summary: Python bindings for the libxslt library
 Group: Development/Libraries
 Requires: libxslt = %{version}
-Requires: libxml2 >= 2.5.4
+Requires: libxml2 >= 2.5.5
 Requires: python
 
 %description python
index 53ae86c..b0283e6 100644 (file)
@@ -638,11 +638,10 @@ xsltTestCompMatch(xsltTransformContextPtr ctxt, xsltCompMatchPtr comp,
                        if ((parent == NULL) || (node->doc == NULL))
                            nocache = 1;
                        else {
-                           while (parent->parent != NULL)
-                               parent = parent->parent;
-                           if (((parent->type != XML_DOCUMENT_NODE) &&
-                                (parent->type != XML_HTML_DOCUMENT_NODE)) ||
-                                (parent != (xmlNodePtr) node->doc))
+                           if ((doc->name != NULL) &&
+                               (doc->name[0] == ' ') &&
+                               (xmlStrEqual(BAD_CAST doc->name, 
+                                            BAD_CAST " fake node libxslt")))
                                nocache = 1;
                        }
                        if (nocache == 0) {
index 6901657..54ecd48 100644 (file)
@@ -3064,25 +3064,19 @@ xsltApplyTemplates(xsltTransformContextPtr ctxt, xmlNodePtr node,
            (list->nodeTab[i]->doc->doc)!=ctxt->xpathCtxt->doc) {         
            /* The nodeset is from another document, so must change */
            ctxt->xpathCtxt->doc=list->nodeTab[i]->doc->doc;
-           if (list->nodeTab[i]->doc->type != XML_ELEMENT_NODE) {
-               if ((ctxt->document = xsltFindDocument(ctxt,
-                                      list->nodeTab[i]->doc->doc))==NULL) { 
-                   xsltTransformError(ctxt, NULL, inst,
-                           "xsl:apply-templates : can't find doc\n");
-                   goto error;
-               }
+           if (list->nodeTab[i]->doc->name != NULL) {
+               ctxt->document = xsltFindDocument(ctxt,
+                                   list->nodeTab[i]->doc->doc);
                ctxt->xpathCtxt->node = list->nodeTab[i];
 #ifdef WITH_XSLT_DEBUG_PROCESS
-               xsltGenericDebug(xsltGenericDebugContext,
+               if (ctxt->document != NULL) {
+                   xsltGenericDebug(xsltGenericDebugContext,
                 "xsltApplyTemplates: Changing document - context doc %s, xpathdoc %s\n",
                 ctxt->document->doc->URL, ctxt->xpathCtxt->doc->URL);
-#endif
-           } else {
-               ctxt->xpathCtxt->node = list->nodeTab[i];
-               ctxt->document = NULL;
-#ifdef WITH_XSLT_DEBUG_PROCESS
-               xsltGenericDebug(xsltGenericDebugContext,
+               } else {
+                   xsltGenericDebug(xsltGenericDebugContext,
             "xsltApplyTemplates: Changing document - Return tree fragment\n");
+               }
 #endif
            }
        }
index 98b872e..1a0a921 100644 (file)
@@ -360,21 +360,21 @@ xsltEvalVariable(xsltTransformContextPtr ctxt, xsltStackElemPtr elem,
            /*
             * This is a result tree fragment.
             */
-           xmlNodePtr container;
+           xmlDocPtr container;
            xmlNodePtr oldInsert;
            xmlDocPtr  oldoutput;
 
-           container = xmlNewDocNode(NULL, NULL,
-                             (const xmlChar *) " fake node libxslt", NULL);
+           container = xmlNewDoc(NULL);
            if (container == NULL)
                return(NULL);
-           container->doc = (xmlDocPtr) container;
+           container->name = xmlStrdup(BAD_CAST " fake node libxslt");
+           container->doc = container;
            container->parent = NULL;
 
            oldoutput = ctxt->output;
-           ctxt->output = (xmlDocPtr) container;
+           ctxt->output = container;
            oldInsert = ctxt->insert;
-           ctxt->insert = container;
+           ctxt->insert = (xmlNodePtr) container;
            xsltApplyOneTemplate(ctxt, ctxt->node, elem->tree, NULL, NULL);
            ctxt->insert = oldInsert;
            ctxt->output = oldoutput;
@@ -497,23 +497,21 @@ xsltEvalGlobalVariable(xsltStackElemPtr elem, xsltTransformContextPtr ctxt) {
            /*
             * This is a result tree fragment.
             */
-           xmlNodePtr container;
+           xmlDocPtr container;
            xmlNodePtr oldInsert;
            xmlDocPtr  oldoutput;
 
-           container = xmlNewDocNode(NULL , NULL,
-                             (const xmlChar *) " fake node libxslt", NULL);
-           if (container == NULL) {
-               elem->name = name;
+           container = xmlNewDoc(NULL);
+           if (container == NULL)
                return(NULL);
-           }
-           container->doc = (xmlDocPtr) container;
+           container->name = xmlStrdup(BAD_CAST " fake node libxslt");
+           container->doc = container;
            container->parent = NULL;
 
            oldoutput = ctxt->output;
-           ctxt->output = (xmlDocPtr) container;
+           ctxt->output = container;
            oldInsert = ctxt->insert;
-           ctxt->insert = container;
+           ctxt->insert = (xmlNodePtr) container;
            xsltApplyOneTemplate(ctxt, ctxt->node, elem->tree, NULL, NULL);
            ctxt->insert = oldInsert;
            ctxt->output = oldoutput;