Skip to content

Commit

Permalink
dev-php/PEAR-HTML_Template_IT: Revbump to add modern patches
Browse files Browse the repository at this point in the history
Replace /e in preg_replace with preg_replace_callback
Use PHP5 constructors

Package-Manager: Portage-2.3.6, Repoman-2.3.3
  • Loading branch information
Brian Evans committed Aug 1, 2017
1 parent 2bd8da0 commit 6ccd06e
Show file tree
Hide file tree
Showing 3 changed files with 111 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2

EAPI=6

inherit php-pear-r2

DESCRIPTION="Integrated Templates"
LICENSE="BSD"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~x86"
IUSE="examples test"
DEPEND="test? ( dev-php/phpunit ${RDEPEND} )"

src_prepare() {
eapply "${FILESDIR}/preg-callback.patch" \
"${FILESDIR}/constructor.patch"
eapply_user
}

src_install() {
use examples && HTML_DOCS=(
examples/sample_it.php
examples/sample_itx_addblockfile.php
examples/templates/
)
php-pear-r2_src_install
}

src_test() {
phpunit tests/AllTests.php || die
}
62 changes: 62 additions & 0 deletions dev-php/PEAR-HTML_Template_IT/files/constructor.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
diff -aurN a/HTML/Template/IT_Error.php b/HTML/Template/IT_Error.php
--- a/HTML/Template/IT_Error.php 2010-03-10 03:08:10.000000000 -0500
+++ b/HTML/Template/IT_Error.php 2017-08-01 16:44:31.257269180 -0400
@@ -58,8 +58,11 @@
*/
function IT_Error($msg, $file = __FILE__, $line = __LINE__)
{
+ $this->__construct($msg, $file, $line);
+ }
+ function __construct($msg, $file = __FILE__, $line = __LINE__)
+ {
$this->PEAR_Error(sprintf("%s [%s on line %d].", $msg, $file, $line));
} // end func IT_Error

} // end class IT_Error
-?>
diff -aurN a/HTML/Template/IT.php b/HTML/Template/IT.php
--- a/HTML/Template/IT.php 2017-08-01 16:40:29.822907534 -0400
+++ b/HTML/Template/IT.php 2017-08-01 16:44:46.515860952 -0400
@@ -409,6 +409,10 @@
*/
function HTML_Template_IT($root = '', $options = null)
{
+ $this->__construct($root, $options);
+ }
+ function __construct($root = '', $options = null)
+ {
if (!is_null($options)) {
$this->setOptions($options);
}
@@ -1184,4 +1188,3 @@
$errorMessages[$value] : $errorMessages[IT_ERROR];
}
} // end class IntegratedTemplate
-?>
diff -aurN a/HTML/Template/ITX.php b/HTML/Template/ITX.php
--- a/HTML/Template/ITX.php 2010-03-10 03:08:10.000000000 -0500
+++ b/HTML/Template/ITX.php 2017-08-01 16:44:41.185654236 -0400
@@ -138,13 +138,17 @@
*/
function HTML_Template_ITX($root = '')
{
+ $this->__construct($root);
+ }
+ function __construct($root = '')
+ {

$this->checkblocknameRegExp = '@' . $this->blocknameRegExp . '@';

$this->functionRegExp = '@' . $this->functionPrefix . '(' .
$this->functionnameRegExp . ')\s*\(@sm';

- $this->HTML_Template_IT($root);
+ parent::__construct($root);
} // end func constructor

/**
@@ -886,4 +890,3 @@
} // end func warning

} // end class HTML_Template_ITX
-?>
17 changes: 17 additions & 0 deletions dev-php/PEAR-HTML_Template_IT/files/preg-callback.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
diff -aurN a/HTML/Template/IT.php b/HTML/Template/IT.php
--- a/HTML/Template/IT.php 2010-03-10 03:08:10.000000000 -0500
+++ b/HTML/Template/IT.php 2017-08-01 15:12:31.161235223 -0400
@@ -1088,9 +1088,10 @@
$content = fread($fh, $fsize);
fclose($fh);

- return preg_replace(
- "#<!-- INCLUDE (.*) -->#ime",
- "\$this->getFile('\\1')",
+ return preg_replace_callback(
+ "#<!-- INCLUDE (.*) -->#im",
+ function($matches) {
+ return $this->getFile($matches[1]); },
$content
);
} // end func getFile

0 comments on commit 6ccd06e

Please sign in to comment.