summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKent Fredric <kentnl@gentoo.org>2017-06-04 07:10:43 +1200
committerKent Fredric <kentnl@gentoo.org>2017-06-04 07:22:25 +1200
commite6b0c67a6a0565bb6e0e50d74e3a9d0bc88e2842 (patch)
tree0baab8a6c703280e26d2ac4efe512fee01f33748 /dev-perl/Data-FormValidator
parentdev-python/urwid: move ~arm64 keyword forward (diff)
downloadgentoo-e6b0c67a6a0565bb6e0e50d74e3a9d0bc88e2842.tar.gz
gentoo-e6b0c67a6a0565bb6e0e50d74e3a9d0bc88e2842.tar.bz2
gentoo-e6b0c67a6a0565bb6e0e50d74e3a9d0bc88e2842.zip
dev-perl/Data-FormValidator: Add fix for '.' in @INC re bug #613378
This avoids the '.' in @INC issue by absolutizing paths at construction time so that "do" never loads any path other than the one the user assumed would be read. Bug: https://bugs.gentoo.org/613378 Package-Manager: Portage-2.3.5, Repoman-2.3.2
Diffstat (limited to 'dev-perl/Data-FormValidator')
-rw-r--r--dev-perl/Data-FormValidator/Data-FormValidator-4.860.0-r1.ebuild32
-rw-r--r--dev-perl/Data-FormValidator/files/4.86-dot-in-inc.patch58
2 files changed, 90 insertions, 0 deletions
diff --git a/dev-perl/Data-FormValidator/Data-FormValidator-4.860.0-r1.ebuild b/dev-perl/Data-FormValidator/Data-FormValidator-4.860.0-r1.ebuild
new file mode 100644
index 000000000000..e91a4c28da9d
--- /dev/null
+++ b/dev-perl/Data-FormValidator/Data-FormValidator-4.860.0-r1.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+DIST_AUTHOR=DFARRELL
+DIST_VERSION=4.86
+inherit perl-module
+
+DESCRIPTION="Validates user input (usually from an HTML form) based on input profile"
+
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
+IUSE=""
+
+PATCHES=( "${FILESDIR}/4.86-dot-in-inc.patch" )
+RDEPEND="dev-perl/Image-Size
+ >=dev-perl/Date-Calc-5.0
+ >=dev-perl/File-MMagic-1.17
+ >=dev-perl/MIME-Types-1.005
+ >=dev-perl/Regexp-Common-0.30.0
+ dev-perl/Email-Valid
+ virtual/perl-File-Spec
+"
+DEPEND="${RDEPEND}
+ virtual/perl-ExtUtils-MakeMaker
+"
+
+src_test() {
+ perl_rm_files t/pod.t
+ perl-module_src_test
+}
diff --git a/dev-perl/Data-FormValidator/files/4.86-dot-in-inc.patch b/dev-perl/Data-FormValidator/files/4.86-dot-in-inc.patch
new file mode 100644
index 000000000000..a6fdb276e42d
--- /dev/null
+++ b/dev-perl/Data-FormValidator/files/4.86-dot-in-inc.patch
@@ -0,0 +1,58 @@
+From bfc088aa911062d987c830d5bb56aa4afd0d3735 Mon Sep 17 00:00:00 2001
+From: Kent Fredric <kentfredric@gmail.com>
+Date: Sun, 4 Jun 2017 00:40:04 +1200
+Subject: [PATCH] Absolutize filenames during construction
+
+This way, any relative paths become absolute as soon as possible,
+so that if chdir happens between "new" and "load_profiles", the loaded
+file won't magically change.
+
+This also aims to turn the <do "file.pm"> into a <do "/path/to/File.pm">
+as the former no longer reads from "." since Perl 5.25.11, as paths
+with neither leading "./" or leading "/" imply @INC traversal.
+
+This aims to resolve RT#120671
+
+https://rt.cpan.org/Ticket/Display.html?id=120671
+https://bugs.gentoo.org/613378
+---
+ Makefile.PL | 1 +
+ lib/Data/FormValidator.pm | 3 ++-
+ 2 files changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/Makefile.PL b/Makefile.PL
+index a9839a6..cef175a 100644
+--- a/Makefile.PL
++++ b/Makefile.PL
+@@ -19,6 +19,7 @@ WriteMakefile(
+ 'Regexp::Common' => 0.03, # when ::whitespace was added
+ 'Scalar::Util' => 0,
+ 'Email::Valid' => 0,
++ 'File::Spec' => 0,
+ },
+ (eval { ExtUtils::MakeMaker->VERSION(6.46) } ? (META_MERGE => {
+ 'meta-spec' => { version => 2 },
+diff --git a/lib/Data/FormValidator.pm b/lib/Data/FormValidator.pm
+index 7075dc4..bc0709e 100644
+--- a/lib/Data/FormValidator.pm
++++ b/lib/Data/FormValidator.pm
+@@ -24,6 +24,7 @@
+
+ package Data::FormValidator;
+ use Exporter 'import';
++use File::Spec qw();
+ use 5.008;
+
+ use Data::FormValidator::Results;
+@@ -147,7 +148,7 @@ sub new {
+ $profiles = $profiles_or_file;
+ }
+ else {
+- $file = $profiles_or_file;
++ $file = File::Spec->rel2abs( $profiles_or_file );
+ }
+
+
+--
+2.12.2
+