DIXml 5.12.0 D6-XE10.2
DIXml 5.12.0 D6-XE10.2
DIXml is an embedded XML, XSLT, and EXSLT processing library for Delphi (Embarcadero / CodeGear / Borland). It is build on the libxml2, libxslt and libexslt libraries. However, DIXml requires no DLLs or any other external files whatsoever. All required code is compiled completely into the application's executable. DIXml is the most feature-complete XML and XSLT solution for Delphi.
Features
XML and HTML reading and writing, pull and push parser modes.
XML and HTML document tree creation, traversal, load, and save.
SAX and extended reader interfaces.
DTD and schema validation.
Encoding support for UTF-8, UTF-16, ISO-8859-family, ASCII (all native).
XPATH processing.
NameSpace support.
XSLT transformation and processing.
File, memory, and customized input / output.
Low memory usage, outstanding performance.
DIXml 5.12.0
XML Security:
Detect infinite recursion in parameter entities.
Fix handling of parameter-entity references.
Disallow namespace nodes in XPointer ranges.
Fix XPointer paths beginning with range-to.
XML Bug Fixes:
xmlcatalog: restore ability to query system catalog easily.
Fix comparison of nodesets to strings.
Fix XPath stack frame logic.
Report undefined XPath variable error message.
Handle more invalid entity values in recovery mode.
Fix structured validation errors.
Handle illegal entity values in recovery mode.
Fix memory leak in nanoftp.
Fix memory leaks in SAX1 parser.
Problem resolving relative URIs.
Fix unwanted warnings when switching encodings.
Heap-buffer-overflow read of size 1 parsing regular expression character ranges.
Fix NULL pointer deref in parsing regular expression character escapes.
Fix infinite loops with push parser in recovery mode.
Fix NULL deref parsing external character entities.
Make sure not to call IS_BLANK_CH when parsing the DTD.
Fix pathological performance when outputting charrefs.
Fix duplicate SAX callbacks for entity content.
Treat URIs with scheme as absolute in C14N.
Fix copy-paste errors in error messages.
Fix sanity check parsing HTML names.
Fix potential infinite loop in xmlStringLenDecodeEntities.
Reset parser input pointers on encoding failure.
Fix memory leak in xmlParseEntityDecl error path.
Fix xmlBuildRelativeURI for URIs starting with './'.
Fix type confusion in xmlValidateOneNamespace.
Fix memory leak in xmlStringLenGetNodeList.
Fix NULL pointer deref dumping element content.
Fix memory leak in xmlBufAttrSerializeTxtContent.
Stop parser on unsupported encodings.
Check for integer overflow in memory debug code.
Fix buffer size checks in xmlSnprintfElementContent.
Avoid reparsing in when parsing start tags.
Fix regular expression undefined behavior.
Check XPath exponents for overflow.
Check XPath prosition predicate for overflow.
Fix spurious error message.
Fix memory leak in xmlCanonicPath.
Fix memory leak comparing node set values.
Fix memory leak in pattern error path.
Fix memory leak in parser error path.
Fix memory leaks in XPointer error paths.
Fix memory leak merging node sets.
Fix memory leak in XPath filter optimizations.
Fix memory leaks in XPath error paths.
Do not leak the new CData node if adding fails.
Prevent unwanted external entity reference.
Increase buffer space for port in HTTP redirect support.
Fix format string warnings.
Disallow namespace nodes in XPointer points.
Fix comparison with root node in xmlXPathCmpNodes.
Fix attribute decoding during XML schema validation.
Fix NULL pointer deref in XPointer range-to.
XML Improvements:
Add const in five places to move 1 KiB to .rdata.
Get rid of “blanks wrapper” for parameter entities.
Simplify handling of parameter entity references.
Make HTML parser functions take const pointers.
Rework entity boundary checks.
Don't switch encoding for internal parameter entities.
Initialize keepBlanks in HTML parser.
Remove useless check in xmlParseAttributeListDecl.
Allow zero sized memory input buffers.
Check for integer overflow converting numbers to string representations.
Simplify control flow parsing XML start tags.
Parse small XPath numbers more accurately.
Rework XPath rounding functions.
Fix axis traversal from attribute and namespace nodes.
Check for trailing characters in XPath expressions earlier.
Rework final handling of XPath results.
Make xmlXPathEvalExpression call xmlXPathEval.
XSLT Bug Fixes:
Fix NULL deref in xsltDefaultSortFunction.
Fix memory hazards in EXSLT function evaluation.
Fix memory leaks in EXSLT error paths.
Fix memory leak in str:concat with empty node-set.
Fix memory leaks in error paths.
Fix NULL pointer deref in XSLT format number function.
Fix UTF-8 check in str:padding.
Check for overflow parsing year without time zone.
Fix double to int conversion.
Check for overflow parsing duration strings.
Disable xsltCopyTextString optimization for extensions.
Create DOCTYPE for HTML version 5.
Make xsl:decimal-format work with namespaces.
Remove the norm:localTime extension function. It was non-standard, undocumented and used a custom date format.
Check for integer overflow adding text to text nodes.
Detect infinite recursion when evaluating function arguments.
Fix memory leak in the the element-available() XSLT function.
Fix for pattern predicates calling functions.
Fix heap overread in in the format-number() XSLT function.
Fix <xsl:number level=“any”/> for non-element nodes.
Fix unreachable code adding a child node.
Change version number in xsl:version warning.
Avoid infinite recursion after failed param evaluation.
Stop if potential recursion is detected.
Consider built-in templates in apply-imports.
Fix precedence with multiple attribute sets.
Rework attribute set resolution.
XSLT Improvements:
New-line terminate error message that missed this convention.
Use xmlBuffers in EXSLT string functions.
Switch to xmlUTF8Strsize in EXSLT string functions.
Check for return value of xmlUTF8Strlen.
Avoid double/long round trip formating an item number.
Separate date and duration structs.
Check for overflow in calculating date differences.
Clamp seconds field of durations.
Fix date:difference with time zones.
Change internal representation of years.
Optimize leap year calculation.
Make some symbols static.
Remove redundant NULL check in XSLT number node processing.
Fix forwards compatibility for imported stylesheets.
Reduce warnings in forwards-compatible mode.
Precompute XSLT elements after preprocessing.
Fix whitespace scanning the top level elements of an XSL stylesheet.
Consolidate recursion checks.
Treat XSLT_STATE_STOPPED as errors.
Make sure that XSLT_STATE_STOPPED isn't overwritten.
Rewrite memory management of local RVTs.
Validate QNames of attribute sets.
Ignore imported stylesheets when applying xsl:use-attribute-sets.
Only for V.I.P
Warning! You are not allowed to view this text.
Comments 1