diff options
-rw-r--r-- | ChangeLog | 9 | ||||
-rw-r--r-- | NEWS | 10 | ||||
-rw-r--r-- | configure.in | 6 | ||||
-rw-r--r-- | doc/html/index.sgml | 1 | ||||
-rw-r--r-- | doc/html/libxslt-numbersinternals.html | 16 | ||||
-rw-r--r-- | doc/html/libxslt-xsltinternals.html | 242 | ||||
-rw-r--r-- | doc/libxslt-decl.txt | 21 | ||||
-rw-r--r-- | doc/libxslt-sections.txt | 1 | ||||
-rw-r--r-- | doc/news.html | 10 | ||||
-rw-r--r-- | doc/python.html | 8 | ||||
-rw-r--r-- | doc/xslt.html | 19 | ||||
-rw-r--r-- | libxslt.spec.in | 12 | ||||
-rw-r--r-- | libxslt/pattern.c | 9 | ||||
-rw-r--r-- | libxslt/transform.c | 22 | ||||
-rw-r--r-- | libxslt/variables.c | 28 |
15 files changed, 275 insertions, 139 deletions
@@ -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: @@ -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: diff --git a/configure.in b/configure.in index 139322a0..78c5adf5 100644 --- a/configure.in +++ b/configure.in @@ -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 diff --git a/doc/html/index.sgml b/doc/html/index.sgml index 4dc35abb..59825038 100644 --- a/doc/html/index.sgml +++ b/doc/html/index.sgml @@ -232,6 +232,7 @@ <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"> diff --git a/doc/html/libxslt-numbersinternals.html b/doc/html/libxslt-numbersinternals.html index b8592399..14ea3115 100644 --- a/doc/html/libxslt-numbersinternals.html +++ b/doc/html/libxslt-numbersinternals.html @@ -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 diff --git a/doc/html/libxslt-xsltinternals.html b/doc/html/libxslt-xsltinternals.html index d6c62088..ea9cc348 100644 --- a/doc/html/libxslt-xsltinternals.html +++ b/doc/html/libxslt-xsltinternals.html @@ -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 +> :</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 diff --git a/doc/libxslt-decl.txt b/doc/libxslt-decl.txt index 9aedc8ee..7f8ff1e6 100644 --- a/doc/libxslt-decl.txt +++ b/doc/libxslt-decl.txt @@ -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> @@ -27,6 +27,10 @@ #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 diff --git a/doc/libxslt-sections.txt b/doc/libxslt-sections.txt index 11206c0f..fdc50c80 100644 --- a/doc/libxslt-sections.txt +++ b/doc/libxslt-sections.txt @@ -359,6 +359,7 @@ xsltDecimalFormatGetByName xsltParseStylesheetProcess xsltParseStylesheetOutput xsltParseStylesheetDoc +xsltParseStylesheetImportedDoc xsltLoadStylesheetPI xsltNumberFormat xsltFormatNumberConversion diff --git a/doc/news.html b/doc/news.html index 065047fe..382f08df 100644 --- a/doc/news.html +++ b/doc/news.html @@ -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="" 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> diff --git a/doc/python.html b/doc/python.html index 3563e496..adae50e4 100644 --- a/doc/python.html +++ b/doc/python.html @@ -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 diff --git a/doc/xslt.html b/doc/xslt.html index 0ffdef00..8b30b6ba 100644 --- a/doc/xslt.html +++ b/doc/xslt.html @@ -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 diff --git a/libxslt.spec.in b/libxslt.spec.in index 31cbf701..b3bc5120 100644 --- a/libxslt.spec.in +++ b/libxslt.spec.in @@ -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 diff --git a/libxslt/pattern.c b/libxslt/pattern.c index 53ae86c0..b0283e60 100644 --- a/libxslt/pattern.c +++ b/libxslt/pattern.c @@ -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) { diff --git a/libxslt/transform.c b/libxslt/transform.c index 6901657d..54ecd48a 100644 --- a/libxslt/transform.c +++ b/libxslt/transform.c @@ -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 } } diff --git a/libxslt/variables.c b/libxslt/variables.c index 98b872e9..1a0a921d 100644 --- a/libxslt/variables.c +++ b/libxslt/variables.c @@ -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; |