Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:MaxxedSUSE:Compiler-Tools
docbook-xsl
docbook-xsl-non-recursive_string_subst.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File docbook-xsl-non-recursive_string_subst.patch of Package docbook-xsl
Description: use EXSLT "replace" function when available A recursive implementation of string.subst is problematic, long strings with many matches will cause stack overflows. Author: Peter De Wachter <pdewacht@gmail.com> Bug-Debian: https://bugs.debian.org/750593 Index: docbook-xsl-1.79.2/lib/lib.xsl =================================================================== --- docbook-xsl-1.79.2.orig/lib/lib.xsl +++ docbook-xsl-1.79.2/lib/lib.xsl @@ -6,7 +6,11 @@ This module implements DTD-independent functions - ******************************************************************** --><xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> + ******************************************************************** --> +<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" + xmlns:str="http://exslt.org/strings" + exclude-result-prefixes="str" + version="1.0"> <xsl:template name="dot.count"> <!-- Returns the number of "." characters in a string --> @@ -52,6 +56,9 @@ <xsl:param name="replacement"/> <xsl:choose> + <xsl:when test="function-available('str:replace')"> + <xsl:value-of select="str:replace($string, string($target), string($replacement))"/> + </xsl:when> <xsl:when test="contains($string, $target)"> <xsl:variable name="rest"> <xsl:call-template name="string.subst">
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor