Age | Commit message (Collapse) | Author | Files | Lines |
|
Change-Id: I03b39e92b2b7898e9a34a1e240722003e7d51cd8
Signed-off-by: DongHun Kwak <dh0128.kwak@samsung.com>
|
|
Change-Id: I18a4b3672d7e46c1ead10d746dbdddcc30f298b7
Signed-off-by: DongHun Kwak <dh0128.kwak@samsung.com>
|
|
Change-Id: I7163f1e8d20d9963a92dea041decb566792ffad1
Signed-off-by: DongHun Kwak <dh0128.kwak@samsung.com>
|
|
Change-Id: Ie087e3508369ac612459f31961addc691f2302c1
Signed-off-by: DongHun Kwak <dh0128.kwak@samsung.com>
|
|
Change-Id: I7d894ba27f8f8e886dbcece3bb3df8e69059cae9
Signed-off-by: DongHun Kwak <dh0128.kwak@samsung.com>
|
|
|
|
Remove spaces followed by tabs, and space and tabs at the end of lines
|
|
For https://bugzilla.gnome.org/show_bug.cgi?id=519926
Both Xalan and Saxon have a systemId function (in their respective
namespaces) to provide the URI of the file that is being transformed.
It would be nice to have that function in libxslt1.1 as well, because
then DocBook could use it[0].
[0] See line 250 et seq in
/usr/share/xml/docbook/stylesheet/nwalsh/common/stripns.xsl
|
|
For https://bugzilla.gnome.org/show_bug.cgi?id=675917
The string wasn't 0 terminated
|
|
https://bugzilla.gnome.org/show_bug.cgi?id=626855
Dates with timezones but no time components are not normalized correctly
Using xsltproc v1.1.26:
$ xsltproc --version
Using libxml 20706, libxslt 10126 and libexslt 815
xsltproc was compiled against libxml 20704, libxslt 10126 and libexslt
815
libxslt 10126 was compiled against libxml 20704
libexslt 815 was compiled against libxml 20704
Dates that have timezone offsets specified but no time components, for
example
"1970-01-01+01:00", are not normalized correctly; the timezone part is
truncated:
date:seconds("1970-01-01") = 0
date:seconds("1970-01-01+01:00") = 0 (not -3600 as expected)
Alters the conditions under which exsltDateNormalize() returns
without normalizing, and adds test cases demonstrating the new behaviour.
|
|
Second part of bug #680920.
|
|
For https://bugzilla.gnome.org/show_bug.cgi?id=680920
If the first child of a func:function template is xslt:text, it will be
removed by xsltParseTemplateContent. So xsltParseTemplateContent should
be called before setting func->content to the first child.
|
|
For https://bugzilla.gnome.org/show_bug.cgi?id=569703
The libexslt implementation of str:replace fails to conform to its
specification on several counts:
a) the current version returns a string; it's supposed to
return a nodeset.
b) the current version treats the replacements as strings;
it's supposed to treat them as nodes.
c) the current version can modify replacement text; it's
supposed to only modify text from the original string.
d) the current version ignores the requirement to perform
substitutions in descending order of search string length.
Steps to reproduce:
a) the returning of a string rather than a nodeset can be seen
by simply inspecting the code.
b) the code explicity converts replacement nodes to strings;
this can be seen by inspection.
d) the failure to perform substitutions in descending order
of search string length can be seen in the lack of any
sorting in the source code.
c) the problem of modifying text not belonging to the original
string can be seen in the following stylesheet, which can
be simply applied to itself to produce output.
<xsl:stylesheet version="1.0"
extension-element-prefixes="str exsl"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:exsl="http://exslt.org/common"
xmlns:str="http://exslt.org/strings"
>
<xsl:variable name="Text">
Price is $1.10
</xsl:variable>
<xsl:template match="/">
<xsl:apply-templates select="exsl:node-set($Text)/text()"/>
</xsl:template>
<xsl:template match="text()">
<xsl:variable name="Replace">
<FromXml>
<from>$</from>
<from>\</from>
</FromXml>
<ToTex>
<to>\$</to>
<to>$\backslash$</to>
</ToTex>
</xsl:variable>
<xsl:value-of
select="str:replace(.,exsl:node-set($Replace)/FromXml/from,exsl:node-set($Replace)/ToTex/to)"/>
</xsl:template>
</xsl:stylesheet>
Actual results:
The output is:
<?xml version="1.0"?>
Price is $\backslash$$1.10
Expected results:
The output should be:
<?xml version="1.0"?>
Price is \$1.10
Does this happen every time?
yes.
Other information:
str:replace specification is at:
http://www.exslt.org/str/functions/replace/str.replace.html
|
|
|
|
Around behaviour and compile flags for localtime and EXSLT date support
|
|
|
|
Makefile.am:
* Use $(VAR), not @VAR@, as the former is the correct form for AC_SUBST'ed
variables in Makefile.am files
* Touch these *.xml/*.syms files in the "dist-hook" target to prevent them
from being regenerated, because the "make dist" process in itself
updates the timestamps of the source files when it copies them into
$(distdir)
* Add EXTRA_LIBS (-lrt on my system) to xsltConf.sh, as this is a required
dependency when client applications link against -lxslt
(note that the definition of EXTRA_LIBS has been changed; see below)
* Removed MAKEFLAGS+=--silent bits, as this is not compatible with non-GNU
Make programs
autogen.sh:
* Add --warnings=all options to automake and autoconf invocations, to
better catch potential problems (most of which I've fixed in this patch)
configure.in:
* Replaced obsolete macros with their current equivalents; for reference,
see
http://www.gnu.org/savannah-checkouts/gnu/autoconf/manual/autoconf-2.69/html_node/Obsolete-Macros.html
(I removed AC_ISC_POSIX outright because the doc states it is no longer
useful)
* test(1) uses "=" as an operator, not "=="
* Fixed quoting on an AC_LINK_IFELSE() invocation to quell Autoconf errors
* Don't add redundant libraries to EXTRA_LIBS, because (1) this variable
already contains LibXSLT's own additional system-library deps, and is
useful in that form, and (2) the LibXML2 deps are already handled by
Libtool
* Don't delete files in srcdir, and don't create the symlink to
"Copyright" there either
(I don't understand why this is being symlinked in the first place...)
doc/Makefile.am:
* Can't use wildcards in EXTRA_DIST, because this breaks dependencies
(e.g. you can't "make EXSLT/\*.html"), and they only work properly when
building inside the source tree; these have been replaced with their
expansions. Other entries have been added here in lieu of the wildcards
in the dist-hook target, as well as opportunistic use of the $(*PAGES)
variables.
* Don't define an "all" target, because this steps on Automake's toes; use
"all-local" instead
* Define and use an "xsltproc" variable to reference an in-tree-built
version of xsltproc, instead of e.g. $(bindir)/xsltproc
NOTE: The makefile also uses $(XSLTPROC), which names an external
instance of the program found at configure time. Some instances of this
could probably be changed to $(xsltproc) to remove the dependency on an
existing installed program.
* Qualified various filenames as appropriate with $(srcdir)
* Use $(XMLLINT) consistently instead of $(bindir)/xmllint
* In the "libxslt-api.xml ..." rule, cd into $(srcdir) before invoking
apibuild.py as this script has to run in srcdir anyway
* In the "clean-local" rule, clear out some additional files to allow
"make distcheck" to pass
* Eliminated the redundant "maintainer-clean-local" rule
* Added a "distclean-local" rule to clear out the build directory in an
out-of-source build to allow "make distcheck" to pass
* Added a "check-extra-dist" target to make it easier to check that
EXTRA_DIST isn't missing anything
* Use $(MKDIR_P), not $(mkinstalldirs), as the latter name is obsolete
* Use $(VAR) instead of @VAR@
* The "dist-hook" target didn't work (if any generated files were in
builddir and not in srcdir), and is no longer needed thanks to the
comprehensive EXTRA_DIST variable
* Added an "uninstall-local" rule to allow "make distcheck" to pass
* Updated the .PHONY target list, removed non-existent targets
doc/symbols.xml:
* Needed to add this bit to make the generation scripts shut up
libexslt/Makefile.am:
* AM_CPPFLAGS should be used instead of INCLUDES, as the latter is an
obsolete name
* Moved $(LIBXML_CFLAGS) to AM_CFLAGS, to segregate CFLAGS from CPPFLAGS
(Note that $(CFLAGS) need not be added to AM_CFLAGS, because Automake
already references both in the build rules)
* Use $(VAR) instead of @VAR@
libxslt.pc.in:
* Add EXTRA_LIBS (-lrt on my system), as this is a required dependency
when client applications link against -lxslt
libxslt/Makefile.am:
* AM_CPPFLAGS should be used instead of INCLUDES, as the latter is an
obsolete name
* Moved $(LIBXML_CFLAGS) to AM_CFLAGS, to segregate CFLAGS from CPPFLAGS
* Use $(VAR) instead of @VAR@, $(MKDIR_P) instead of $(mkinstalldirs)
* Use $(MKDIR_P), not $(mkinstalldirs), as the latter name is obsolete
libxslt/xsltutils.c:
* Some systems don't know about CLOCK_MONOTONIC; older Solaris knows about
CLOCK_HIGHRES. Some systems, alas, have no usable alternative to
CLOCK_REALTIME.
python/Makefile.am:
* AM_CPPFLAGS should be used instead of INCLUDES, as the latter is an
obsolete name
* Moved $(LIBXML_CFLAGS) to AM_CFLAGS, to segregate CFLAGS from CPPFLAGS
* Because libxslt-py.c is (presumably) supposed to be generated every time
at build time, don't bundle it in the dist tarball
* Use $(VAR) instead of @VAR@
* libxsltclass.py is a generated file, so it doesn't get qualified with
$(srcdir)
* Use $(MKDIR_P) instead of (mkinstalldirs)
* Added an uninstall-local rule so that "make distcheck" passes
* Removed the $(srcdir) qualifications in the GENERATED file list, as
these files may exist in builddir
* In the gen_prog rule, qualify the script invocation with $(srcdir), and
set the SRCDIR environment variable so that the script can find the
files it needs when builddir != srcdir
* Don't define an "all" target, as this steps on Automake's toes
python/generator.py:
* Get the source directory from the SRCDIR environment variable, and use
it appropriately
python/tests/Makefile.am:
* Set CLEANFILES instead of defining a "clean" rule
* Use $(VAR) instead of @VAR@, $(MKDIR_P) instead of $(mkinstalldirs)
tests/*/Makefile.am, tests/exslt/*/Makefile.am:
* Need to clean up .memdump files for "make distcheck" to pass
* Don't define an "all" target, as this steps on Automake's toes
tests/REC/Makefile.am:
* Added two missing *.stand.out files to EXTRA_DIST
tests/XSLTMark/Makefile.am:
* Replaced the GNU-Make-specific %.out bit with a more broadly compatible
rule
(the "dummy" bit shuts up Automake)
* Use "$(xsltproc)" instead of "$(top_builddir)/xsltproc/xsltproc"
* Use a less $(MAKE)-heavy invocation in the "tests" target
* Replaced a conflicting "clean" target with CLEANFILES
* Added a dependency on $(xsltproc) to all the test targets
* Added a .PHONY target list
tests/docbook/Makefile.am:
* Ditched the "echo -n" bit, because it wasn't working as advertised
* Create output directories for out-of-source builds
* "$(basename $$i)" is a typo in a makefile
* Don't embed $(srcdir) in $out/$html/$fo/$msg/$xhtml, so that we can
refer to these files in builddir or srcdir
* Add a trailing "echo" to complete the "echo -n"
* Don't output files unconditionally to srcdir (it may be read-only, for
starters)
tests/plugins/Makefile.am:
* AM_CPPFLAGS should be used instead of INCLUDES, as the latter is an
obsolete name
(Note that the "$(LIBXML_CFLAGS) $(LIBXSLT_CFLAGS)" bit that was here
can be dropped entirely, because these already appear in
xmlsoft_org_xslt_testplugin_la_CFLAGS)
* Use noinst_LTLIBRARIES inside the WITH_MODULES conditional instead of
EXTRA_LTLIBRARIES, as this is cleaner (and disallows building the plugin
if module support is disabled)
* Need to clean up *.res files for "make distcheck" to pass
* Use the abs_builddir variable conveniently provided to us by Automake
instead of a GNU Make $(shell ...) construct
xslt-config.in:
* Add EXTRA_LIBS (-lrt on my system), as this is a required dependency
when client applications link against -lxslt
xsltproc/Makefile.am:
* AM_CPPFLAGS should be used instead of INCLUDES, as the latter is an
obsolete name
* Moved $(LIBXML_CFLAGS) into AM_CFLAGS
* Use $(VAR) instead of @VAR@
* Need to clean .memdump for "make distcheck" to pass
* Added rules to build lib[e]xslt.la if needed, which allows test
makefiles to build xsltproc on the fly even if nothing else has been
built already
* Create .memdump file in the "tests" target, as it's being grepped
afterward
|
|
Also adds a regression test provided by Michael Ludwig <milu71@gmx.de>
|
|
exsltconfig.h should be addressed differently
|
|
* libexslt/exslt.h libexslt/date.c libexslt/math.c libexslt/sets.c
libexslt/strings.c: provide registration function for an XPath
context directly
|
|
* libxslt/xsltInternals.h libexslt/functions.c: add a function call
counting in the transformation context, and test/increment/decrement
in exsltFuncFunctionFunction enter and exit
|
|
* doc/symbols.xml doc/syms.xsl doc/checkapisym.xsl libxslt/libxslt.syms:
the new symbol files, checking and stylesheets, based on libxml2 ones
* configure.in doc/Makefile.am libxslt/Makefile.am: modifications needed
to activate the symbol versioning
* doc/libxslt-api.xml doc/libxslt-refs.xml doc/EXSLT/libexslt-api.xml
doc/EXSLT/libexslt-refs.xml: regenerated
* libexslt/crypto.c libxslt/Makefile.am libxslt/keys.c libxslt/variables.c
libxslt/xslt.c libxslt/xsltInternals.h libxslt/xsltlocale.c
libxslt/xsltlocale.h: various cleanups
|
|
|
|
* libexslt/exslt.c libxslt/extensions.c libxslt/extensions.h
libxslt/security.c libxslt/transform.c libxslt/xslt.c: extension
support use some global variables, make sure there is a Mutex to
access and modify them
|
|
* libexslt/strings.c: Fixed indexing error reported by Ron Burk on the mailing list.
svn path=/trunk/; revision=1494
|
|
* python/Makefile.am libxslt/Makefile.am configure.in
libexslt/Makefile.am: applied patch from Roumen Petrov for
mingw cross compilation problems raised by Rich Jones
daniel
svn path=/trunk/; revision=1493
|
|
* Minor cleanup of "typo" and some compilation warnings:
tests/namespaces/tst7.xsl: fixed typo detected by new libxml2 code
libxslt/keys.c, libxslt/xsltlocale.c, libexslt/date.c: trivial
changes for gcc warnings.
svn path=/trunk/; revision=1489
|
|
* libexslt/crypto.c: fix for CVE-2008-2935 libexslt RC4
encryption/decryption functions
Daniel
svn path=/trunk/; revision=1487
|
|
* libexslt/math.c: fixed incorrect argument popping in exsltMathAtan2Function #541965
svn path=/trunk/; revision=1483
|
|
* libxslt/libxslt.h libexslt/libexslt.h libexslt/exslt.h: patch
from Roumen Petrov fixing include path when compiling with MinGW
Daniel
svn path=/trunk/; revision=1479
|
|
svn path=/trunk/; revision=1466
|
|
* libexslt/date.c: new version of patch from Peter Pawlowski
Daniel
svn path=/trunk/; revision=1465
|
|
* libexslt/date.c: applied patch from Peter Pawlowski fixing
a timezone offset problem, fixes #521680
* libxslt/namespaces.c: a bit of space/tabs cleanup
Daniel
svn path=/trunk/; revision=1462
|
|
list by Mark Howe, which caused a segfault if func:result was
postitioned as top-level element.
svn path=/trunk/; revision=1460
|
|
* libexslt/common.c, libexslt/dynamic.c: After discussion on
Bugzilla with Peter Pawlowski, added same code for preventing
deletion of function result during garbage collection (see
bug #495995).
svn path=/trunk/; revision=1449
|
|
* libexslt/strings.c: Added code to mark the results of
str:tokenize and str:split as "function result" to avoid
garbage-collecting them during global variable initialisation.
Should fix bug #495995.
svn path=/trunk/; revision=1448
|
|
* libexslt/date.c tests/exslt/date/datetime.1.out
tests/exslt/date/date.1.out tests/exslt/date/date.1.xml:
applied patch from Maurice van der Pot to fix EXSLT
week-in-year extenson which was not conforming to the definition.
This also changes the output of the tests a bit. Should fix #452876
Daniel
svn path=/trunk/; revision=1446
|
|
* libexslt/date.c: apply patch from Björn Wiberg fixing build on AIX
and closing bug #332173
Daniel
svn path=/trunk/; revision=1437
|
|
* libexslt/math.c: fixed two memory leaks, one in exsltMathConstant
and one in exsltMathConstantFunction (bug #436324)
svn path=/trunk/; revision=1427
|
|
* configure.in doc/*: preparing release of 1.1.20
* libexslt/crypto.c: small patch for missing includes on some BSD,
fixes #397373
* configure.in: replace == by = in test, raised by Roland Illig,
should fix #397371
Daniel
svn path=/trunk/; revision=1418
|
|
* libexslt/strings.c: added new function replace from Joel
Reed.
* tests/exslt/Makefile.am, replace.1.xml, replace.1.xsl,
replace.1.out: added new test case for above.
* libxslt.spec.in: trivial change from Gnome to GNOME
* configure.in: trivial change for flags on my compilations
* libxslt/documents.c, libxslt/documents.h, libxslt/keys.c,
libxslt/keys.h, libxslt/variables.c, libxslt/templates.c,
libxslt/transform.c, libxslt/variables.c, libxslt/xslt.c,
libxslt/xsltutils.c: fixed some documentation/comments and
compilation warnings - no change to logic.
* re-generated the documentation.
svn path=/trunk/; revision=1413
|
|
* libexslt/functions.c: further enhancement to the original
fix for bug #381319 (which was not correct).
* tests/exslt/functions: minor enhancement to function.9.xsl;
function.10.[xsl,xml,out] added to regression tests to check
recursive calls.
|
|
* libexslt/functions.c: changed handling of function params
to fix bug #381319
* libxslt/transform.[ch]: exposed xsltLocalVariablePush and
xsltLocalVariablePop as global entries so that they could
be used from within libexslt/functions.c
* tests/exslt/functions/function.9.[xsl,xml,out] added to
regression tests
|
|
* NEWS configure.in doc//*: preparing release of libxslt-1.1.18,
this bumps libxml2 requirement to 1.6.27
* libexslt/date.c libxslt/namespaces.h libxslt/xslt.c
libxslt/xsltInternals.h: cosmetic cleanups to restore the
API extraction
Daniel
|
|
* libexslt/date.c: fixed end-of-month problem in exsltDateCurrent
(#359246)
|
|
* libxslt/Makefile.am: a missing DESTDIR
* python/Makefile.am: fix reference to build paths in python module
* libexslt/exsltconfig.h.in libxslt/xsltconfig.h.in: fix the header
comments on version values, the 3 are patches from Peter
Breitenlohner and should fix #340995
Daniel
|
|
* libxslt/transform.c: Fixed problem with cleanup of RVT's, should
clear bug350085; cleaned up most warnings (still a problem in
xsltShallowCopyNsNode)
* trivial warning cleanup in libxslt/[extensions.c, namespaces.c,
xslt.c and xsltInternals.h] and libexslt/functions.c
|
|
* libxslt/attributes.c libxslt/documents.c
libxslt/functions.c libxslt/keys.c libxslt/namespaces.c
libxslt/pattern.c libxslt/preproc.c libxslt/templates.c
libxslt/templates.h libxslt/transform.c
libxslt/variables.c libxslt/xslt.c
libxslt/xsltInternals.h libxslt/xsltutils.c
libxslt/xsltutils.h libexslt/common.c libexslt/dynamic.c
libexslt/functions.c libexslt/strings.c:
Committing again, since I forgot to switch from win to linux
linebreaks in the files.
|
|
* libxslt/attributes.c libxslt/documents.c
libxslt/functions.c libxslt/keys.c libxslt/namespaces.c
libxslt/pattern.c libxslt/preproc.c libxslt/templates.c
libxslt/templates.h libxslt/transform.c libxslt/variables.c
libxslt/xslt.c libxslt/xsltInternals.h libxslt/xsltutils.c
libxslt/xsltutils.h libexslt/common.c libexslt/dynamic.c
libexslt/functions.c libexslt/strings.c:
Refactored xsltValueOf(). Changed to use xmlXPathCastToString()
directly, rather than creating an intermediate object with
xmlXPathConvertString(). This now does not add a text-node to
the result if the string is empty (this has impact on
serialization, since an empty text-node is serialized as
<foo></foo>, and now it will be serialized as <foo/>).
Refactored other functions in transform.c:
Mostly code cleanup/restructuring. Minimized number of
function variables for instruction which eat up function stack
memory when recursing templates (xsltIf(), xsltChoose(),
xsltApplyTemplates(), xsltCallTemplate()).
Changed XSLT tests to use xmlXPathCompiledEvalToBoolean().
Implemented redefinition checks at compilation-time and
eliminating them at transformation time in the refactored code
paths.
Introduced the field @currentTemplateRule on xsltTransformContext to
reflect the "Current Template Rule" as defined by the spec.
NOTE that ctxt->currentTemplateRule and ctxt->templ is not the
same; the former is the "Current Template Rule" as defined by the
XSLT spec, the latter is simply the template struct being
currently processed by Libxslt.
Added XML_COMMENT_NODE and XML_CDATA_SECTION_NODE to the macro
IS_XSLT_REAL_NODE.
Misc code cleanup/restructuring and everything else I already forgot.
Refactored lifetime of temporary result tree fragments.
Substituted all calls to the now deprecated xsltRegisterTmpRVT()
for the new xsltRegisterLocalRVT().
Fragments of xsl:variable and xsl:param are freed when the
variable/pram is freed.
Fragments created when evaluating a "select" of xsl:varible and
xsl:param are also bound to the lifetime of the var/param.
EXSLT's func:function now uses the following functions to let take
care the transformation's garbage collector of returned tree
fragments:
xsltExtensionInstructionResultRegister(),
xsltExtensionInstructionResultFinalize()
Fixes:
#339222 - xsl:param at invalid position inside an xsl:template is
not catched
#346015 - Non-declared caller-parameters are accepted
#160400 - Compiles invalid XSLT; unbound variable accepted
#308441 - namespaced parameters become unregistered
#307103 - problem with proximity position in predicates of match
patterns
#328218 - problem with exsl:node-set() when converting strings
to node sets
#318088 - infinite recursion detection
#321505 - Multiple contiguous CDATA in output
#334493 - "--param" option does not have root context
#114377 - weird func:result/xsl:variable/exsl:node-set interaction
#150309 - Regression caused by fix for 142768
|
|
* libxslt/xsltInternals.h libxslt/attributes.c
libxslt/documents.c libxslt/extensions.c
libxslt/extensions.h libxslt/functions.c
libxslt/imports.c libxslt/keys.c libxslt/preproc.c
libxslt/transform.c libxslt/variables.c libxslt/xslt.c
libxslt/xsltutils.c libxslt/xsltutils.h libexslt/functions.c:
Next step of refactoring (plus some bug-fixes).
For more details see #340780.
|