1. 20 Feb, 2019 1 commit
    • Nick Wellnhofer's avatar
      Always set context node before calling XPath iterators · 08b62c25
      Nick Wellnhofer authored
      The xmlXPathNext* iterators rely on the XPath context node being set to
      the start node of the iteration. Some parts of the code base like the
      xsl:key functions also leave the context node in an unspecified state.
      Make sure that the context node is reset before invoking the XPath
      iterators. Also backup and restore the context node in
      xsltNumberFormatGetMultipleLevel for good measure.
      
      This bug could also lead to type confusion and invalid reads in
      connection with namespace nodes.
      
      Fixes #13. Also see the Chromium bug report:
      
      https://bugs.chromium.org/p/chromium/issues/detail?id=930663
      
      Thanks to Nicolas Grégoire for the report.
      08b62c25
  2. 04 Nov, 2017 1 commit
  3. 27 May, 2017 1 commit
    • Nick Wellnhofer's avatar
      Switch to xmlUTF8Strsize in numbers.c · 3ff5dc37
      Nick Wellnhofer authored
      When encountering invalid UTF-8, xsltUTF8Size can return a size greater
      than the actual string length or -1. Switch to xmlUTF8Strsize which
      returns a sensible size even with invalid UTF-8.
      
      Under normal conditions, libxslt should never receive invalid UTF-8.
      But this change helps when fuzzing and hardens security.
      3ff5dc37
  4. 18 May, 2017 1 commit
    • Jan Pokorný's avatar
      New-line terminate error message that missed this convention · 896caefc
      Jan Pokorný authored
      That could confuse library users that set their own error handler,
      because there are already cases in libxslt that push a single message
      in chunks (the same way as libxml2 does) and the user may be interested
      in performing the message reconstruction on its own.
      896caefc
  5. 12 Oct, 2016 1 commit
  6. 13 Aug, 2016 1 commit
  7. 10 Apr, 2016 4 commits
  8. 22 Mar, 2016 1 commit
    • Nick Wellnhofer's avatar
      Fix xsltNumberFormatGetMultipleLevel · d182d8f6
      Nick Wellnhofer authored
      Namespace nodes are actually an xmlNs, not an xmlNode. They must be
      special-cased in xsltNumberFormatGetMultipleLevel to avoid an
      out-of-bounds heap access.
      
      Move the test whether a node matches the "count" pattern to a separate
      function to make the code more readable. As a side effect, we also
      compare expanded names when walking up the ancestor axis, fixing an
      insignificant bug.
      d182d8f6
  9. 13 Dec, 2015 1 commit
    • Nick Wellnhofer's avatar
      Rework xsltNumberFormat to fix warning · 22c69898
      Nick Wellnhofer authored
      Commit 15f148ee introduced a warning because a const pointer was passed
      to xmlFree. Rework xsltNumberFormat to tokenize numbers before
      allocating the output buffer and use a local xmlChar* if the format
      must be evaluated dynamically.
      22c69898
  10. 02 Dec, 2015 1 commit
  11. 25 Feb, 2014 1 commit
  12. 12 Sep, 2012 1 commit
  13. 08 Nov, 2010 1 commit
  14. 02 Jul, 2005 1 commit
  15. 30 Jun, 2005 1 commit
  16. 01 Dec, 2004 1 commit
    • William M. Brack's avatar
      minor changes to get rid of gcc warnings, especially on 64-bit system. · 88355389
      William M. Brack authored
      * libxslt/extensions.c, libxslt/functions.c, libxslt/numbers.c,
        libxslt/pattern.c, libxslt/transform.c, libxslt/xslt.c,
        libxslt/xsltInternals.h: minor changes to get rid of gcc
        warnings, especially on 64-bit system. Implemented
        XML_CAST_FPTR macro to cast between function pointer <->
        object pointer while avoiding gcc warnings (a hack).
        No change to the logic.
      88355389
  17. 23 Oct, 2004 1 commit
    • William M. Brack's avatar
      changed some variable names for warning cleanup when -ansi flag is not · e21d0a50
      William M. Brack authored
      * libexslt/crypto.c, libexslt/functions.c, libxslt/keys.c,
        libxslt/numbers.c, libxslt/pattern.c, libxslt/transform.c,
        libxslt/variables.c: changed some variable names for warning
        cleanup when -ansi flag is not present.
      * libxslt/namespaces.c: fixed potential NULL pointer reference
        pointed out by Dennis Dams (bug 156187)
      e21d0a50
  18. 08 Sep, 2004 1 commit
  19. 07 Sep, 2004 1 commit
  20. 13 Feb, 2004 1 commit
    • Daniel Veillard's avatar
      added new code to handle attribute value templates also a lot of work to · 50b5fc7b
      Daniel Veillard authored
      * libxslt/attrvt.c libxslt/Makefile.am: added new code to handle
        attribute value templates
      * libxslt/*.c libxslt/*.h: also a lot of work to reuse the
        dictionaries at the stylesheet and transformation level.
      * configure.in: this relies on a recent version of libxml2
        with the sub dictionnary catalog.
      Daniel
      50b5fc7b
  21. 22 Dec, 2003 1 commit
  22. 21 Dec, 2003 1 commit
  23. 28 Sep, 2003 1 commit
  24. 18 Sep, 2003 1 commit
  25. 07 Aug, 2003 1 commit
  26. 31 Jul, 2003 1 commit
  27. 29 Jul, 2003 1 commit
  28. 17 Jul, 2003 1 commit
  29. 16 Jul, 2003 1 commit
  30. 07 Mar, 2003 1 commit
  31. 13 Dec, 2002 1 commit
  32. 11 Dec, 2002 1 commit
    • Daniel Veillard's avatar
      copied over the apibuild.py from libxml2, adapted a bit and regenerated · 162c34f4
      Daniel Veillard authored
      * doc/Makefile.am doc/apibuild.py doc/libxslt-api.xml:
        copied over the apibuild.py from libxml2, adapted a bit and
        regenerated the API description in XML. Todo: libexslt-api.xml
      * libxslt/attributes.c libxslt/documents.c libxslt/extensions.c
        libxslt/imports.c libxslt/numbers.c libxslt/numbersInternals.h
        libxslt/pattern.c libxslt/preproc.c libxslt/security.c
        libxslt/templates.c libxslt/transform.c libxslt/transform.h
        libxslt/variables.c libxslt/xslt.c libxslt/xsltInternals.h
        libxslt/xsltutils.c libxslt/xsltutils.h: cleanup based on the
        report from the scripts.
      * libxslt.spec.in: make sure libxslt-api.xml ends up in the devel
        package
      Daniel
      162c34f4
  33. 22 Oct, 2002 1 commit
    • Daniel Veillard's avatar
      fixed bug #78501 when using a non ascii character for the number · 6b0ea0af
      Daniel Veillard authored
      * libxslt/numbers.c libxslt/numbersInternals.h libxslt/xsltutils.[ch]:
        fixed bug #78501 when using a non ascii character for the
        number formatting grouping separator.
      * tests/docs/Makefile.am tests/docs/bug-95.xml
        tests/general/Makefile.am tests/general/bug-95.*: added the
        example in the regression tests for this case
      * libxslt/attributes.c: cleaning up a problem introduced in last
        patch
      Daniel
      6b0ea0af
  34. 15 Oct, 2002 1 commit
    • Daniel Veillard's avatar
      added the possibility to register a transformation context specific error · dd6061e8
      Daniel Veillard authored
      * libxslt/xsltInternals.h libxslt/xsltutils.[ch]: added the
        possibility to register a transformation context specific
        error handler, with xsltSetTransformErrorFunc() and provided
        a new routine xsltTransformError() to handle contextual errors,
        this should fix #94435
      * libxslt/*.c: modified all the code to use the context specific
        error handling, as a result xsltPrintErrorContext() is not called
        anymore except internally from xsltTransformError()
      Daniel
      dd6061e8
  35. 15 Jun, 2002 1 commit
    • Daniel Veillard's avatar
      applied a patch from Ken Neighbors fixing some format-number · 441bb78e
      Daniel Veillard authored
      * libxslt/numbers.c libxslt/numbersInternals.h: applied a
        patch from Ken Neighbors fixing some format-number inconsistencies
      * tests/numbers/format-number.out tests/numbers/format-number.xml
        tests/numbers/format-number.xsl: the patch also included
        updates to the regression tests
      Daniel
      441bb78e
  36. 10 Jun, 2002 1 commit
  37. 18 Mar, 2002 1 commit