<pre style='margin:0'>
Renee Otten (reneeotten) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/59cdf889e63a4640d21cac58e14117c75e3b78df">https://github.com/macports/macports-ports/commit/59cdf889e63a4640d21cac58e14117c75e3b78df</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'> new 59cdf889e63 docbook-xsl: fix infinite recursion for e.g. samba
</span>59cdf889e63 is described below
<span style='display:block; white-space:pre;color:#808000;'>commit 59cdf889e63a4640d21cac58e14117c75e3b78df
</span>Author: Mike L. <cl.jeremy@qq.com>
AuthorDate: Mon Apr 28 12:53:53 2025 +0200
<span style='display:block; white-space:pre;color:#404040;'> docbook-xsl: fix infinite recursion for e.g. samba
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> Closes: https://trac.macports.org/ticket/72362
</span>---
textproc/docbook-xsl/Portfile | 10 +++++++---
textproc/docbook-xsl/files/patch-libxsl.diff | 30 ++++++++++++++++++++++++++++
2 files changed, 37 insertions(+), 3 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/textproc/docbook-xsl/Portfile b/textproc/docbook-xsl/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index e4e709258a8..700caf41beb 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/textproc/docbook-xsl/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/textproc/docbook-xsl/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -37,7 +37,7 @@ if {${subport} eq ${name}} {
</span> }
subport ${name}-nons {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- revision 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ revision 1
</span> description Non-namespaced version of the DocBook XSL stylesheets
distname ${subport}-${version}
checksums rmd160 63bae43e79c3b8bc3dac66711eb8c9e5ae3e4a32 \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -46,7 +46,7 @@ subport ${name}-nons {
</span> }
subport ${name}-ns {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- revision 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ revision 1
</span> description Namespaced version of the DocBook XSL stylesheets
distname ${name}-${version}
checksums rmd160 425ca8723443bcd45c23d33df26e13b930b2ce42 \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -55,7 +55,7 @@ subport ${name}-ns {
</span> }
subport ${name}-docs {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- revision 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ revision 1
</span> description Documentation for the DocBook XSL stylesheets
distname ${name}-doc-${version}
worksrcdir ${name}-${version}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -76,6 +76,10 @@ use_configure no
</span> build {}
if {${subport} in [list "${name}-nons" "${name}-ns"]} {
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Non-recursive string.subst that doesn't kill smb.conf.5 generation
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # See: https://trac.macports.org/ticket/72362
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ patchfiles-append patch-libxsl.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> xml.catalog ${prefix}/${instxsldir}/catalog.xml \
${prefix}/${instxsldir}/catalog.sf.xml
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/textproc/docbook-xsl/files/patch-libxsl.diff b/textproc/docbook-xsl/files/patch-libxsl.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..ffd980d48b4
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/textproc/docbook-xsl/files/patch-libxsl.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,30 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Description: use EXSLT "replace" function when available
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ A recursive implementation of string.subst is problematic,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ long strings with many matches will cause stack overflows.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Author: Peter De Wachter <pdewacht@gmail.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Bug-Debian: https://bugs.debian.org/750593
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- lib/lib.xsl.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ lib/lib.xsl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -6,7 +6,10 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ This module implements DTD-independent functions
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- ******************************************************************** --><xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ ******************************************************************** --><xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ xmlns:str="http://exslt.org/strings"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ exclude-result-prefixes="str"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ version="1.0">
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ <xsl:template name="dot.count">
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ <!-- Returns the number of "." characters in a string -->
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -52,6 +56,9 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ <xsl:param name="replacement"/>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ <xsl:choose>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ <xsl:when test="function-available('str:replace')">
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ <xsl:value-of select="str:replace($string, string($target), string($replacement))"/>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ </xsl:when>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ <xsl:when test="contains($string, $target)">
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ <xsl:variable name="rest">
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ <xsl:call-template name="string.subst">
</span></pre><pre style='margin:0'>
</pre>