Hello community, here is the log from the commit of package docbook-xsl-stylesheets for openSUSE:Factory checked in at 2017-09-04 12:18:56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/docbook-xsl-stylesheets (Old) and /work/SRC/openSUSE:Factory/.docbook-xsl-stylesheets.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "docbook-xsl-stylesheets" Mon Sep 4 12:18:56 2017 rev:47 rq:519314 version:1.79.0 Changes: -------- --- /work/SRC/openSUSE:Factory/docbook-xsl-stylesheets/docbook-xsl-stylesheets.changes 2017-02-20 13:11:19.300308671 +0100 +++ /work/SRC/openSUSE:Factory/.docbook-xsl-stylesheets.new/docbook-xsl-stylesheets.changes 2017-09-04 12:18:57.394006571 +0200 @@ -1,0 +2,13 @@ +Sat Aug 26 12:07:41 UTC 2017 - thomas.schrai...@suse.com + +- Add docbook-xsl-stylesheets-non-recursive_string_subst.patch + Use str:replace from exslt.org to implement string.subst + + string.subst implementation causes recursion issues when building + systemd documentation. This issue has been reported in + https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=765567 and + https://bugs.archlinux.org/task/54694 . + + Taken from https://github.com/fishilico/xslt10-stylesheets/commit/a7df4fbbef3ab0f97d50aa47f2ccfa0630a2686e + +------------------------------------------------------------------- New: ---- docbook-xsl-stylesheets-non-recursive_string_subst.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ docbook-xsl-stylesheets.spec ++++++ --- /var/tmp/diff_new_pack.y0BEgw/_old 2017-09-04 12:18:58.521848018 +0200 +++ /var/tmp/diff_new_pack.y0BEgw/_new 2017-09-04 12:18:58.529846893 +0200 @@ -34,6 +34,8 @@ Source10: dbxslt-install.sh ## PATCH-FIX-OPENSUSE docbook-xsl-stylesheets-dbtoepub.patch Fixed dirname Patch0: %{name}-dbtoepub.patch +## PATCH-FIX-OPENSUSE docbook-xsl-stylesheets-non-recursive_string_subst.patch Use EXSLT replace function to avoid recursive implementation of string.subst +Patch1: %{name}-non-recursive_string_subst.patch BuildRequires: fdupes BuildRequires: sgml-skel >= 0.7 BuildRequires: unzip @@ -83,6 +85,7 @@ %prep %setup -q -n docbook-xsl-%{realversion} -b1 %patch0 -p1 +%patch1 -p1 cp %{SOURCE10} . ++++++ docbook-xsl-stylesheets-non-recursive_string_subst.patch ++++++ 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 <pdewa...@gmail.com> Bug-Debian: https://bugs.debian.org/750593 Index: docbook-xsl-1.79.0/lib/lib.xsl =================================================================== --- docbook-xsl-1.79.0.orig/lib/lib.xsl +++ docbook-xsl-1.79.0/lib/lib.xsl @@ -10,7 +10,10 @@ 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 --> @@ -56,6 +59,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">