aboutsummaryrefslogtreecommitdiffstats
path: root/textproc
diff options
context:
space:
mode:
authorjylefort <jylefort@FreeBSD.org>2005-06-07 02:08:02 +0800
committerjylefort <jylefort@FreeBSD.org>2005-06-07 02:08:02 +0800
commitb19de0abb9ee4185e6e8a5d63d15fb750889ba00 (patch)
treef22146c84a8f199b2fd0827385f506c7d9785b2a /textproc
parent18c1a2d8ac4274076fe6fae6050e5a1c47787eeb (diff)
downloadfreebsd-ports-gnome-b19de0abb9ee4185e6e8a5d63d15fb750889ba00.tar.gz
freebsd-ports-gnome-b19de0abb9ee4185e6e8a5d63d15fb750889ba00.tar.zst
freebsd-ports-gnome-b19de0abb9ee4185e6e8a5d63d15fb750889ba00.zip
Fix xinclude so that it works with the latest libxslt API.
PR: ports/81802 Submitted by: skv Approved by: maintainer
Diffstat (limited to 'textproc')
-rw-r--r--textproc/p5-XML-LibXSLT/Makefile1
-rw-r--r--textproc/p5-XML-LibXSLT/files/patch-LibXSLT.xs33
2 files changed, 34 insertions, 0 deletions
diff --git a/textproc/p5-XML-LibXSLT/Makefile b/textproc/p5-XML-LibXSLT/Makefile
index f7651059c985..a841aba8cdb7 100644
--- a/textproc/p5-XML-LibXSLT/Makefile
+++ b/textproc/p5-XML-LibXSLT/Makefile
@@ -7,6 +7,7 @@
PORTNAME= XML-LibXSLT
PORTVERSION= 1.57
+PORTREVISION= 1
CATEGORIES= textproc perl5
MASTER_SITES= ${MASTER_SITE_PERL_CPAN}
MASTER_SITE_SUBDIR= XML
diff --git a/textproc/p5-XML-LibXSLT/files/patch-LibXSLT.xs b/textproc/p5-XML-LibXSLT/files/patch-LibXSLT.xs
new file mode 100644
index 000000000000..f94d65703e5c
--- /dev/null
+++ b/textproc/p5-XML-LibXSLT/files/patch-LibXSLT.xs
@@ -0,0 +1,33 @@
+--- LibXSLT.xs.orig Mon Mar 1 18:42:43 2004
++++ LibXSLT.xs Mon Apr 11 08:07:33 2005
+@@ -772,6 +772,7 @@
+ xmlDocPtr real_dom;
+ xmlDocPtr doc;
+ STRLEN len;
++ xsltTransformContextPtr ctxt;
+ CODE:
+ if (sv_doc == NULL) {
+ XSRETURN_UNDEF;
+@@ -806,10 +807,21 @@
+ (xmlInputOpenCallback) LibXSLT_input_open,
+ (xmlInputReadCallback) LibXSLT_input_read,
+ (xmlInputCloseCallback) LibXSLT_input_close);
+- real_dom = xsltApplyStylesheet(self, doc, xslt_params);
++
++ ctxt = xsltNewTransformContext(self, doc);
++ if (ctxt == NULL)
++ return;
++
++ xsltSetCtxtParseOptions(ctxt, 0);
++
++ if (xsltGetXIncludeDefault())
++ ctxt->xinclude = 1;
++
++ real_dom = xsltApplyStylesheetUser(self, doc, xslt_params, NULL, NULL, ctxt);
+
+ xmlCleanupInputCallbacks();
+ xmlRegisterDefaultInputCallbacks();
++ xsltFreeTransformContext(ctxt);
+
+ if (real_dom == NULL) {
+ if (SvTRUE(ERRSV)) {