summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-lang/perl/files/perl-exp_intwrap.patch')
-rw-r--r--dev-lang/perl/files/perl-exp_intwrap.patch58
1 files changed, 0 insertions, 58 deletions
diff --git a/dev-lang/perl/files/perl-exp_intwrap.patch b/dev-lang/perl/files/perl-exp_intwrap.patch
deleted file mode 100644
index 44c4d4ced361..000000000000
--- a/dev-lang/perl/files/perl-exp_intwrap.patch
+++ /dev/null
@@ -1,58 +0,0 @@
---- sv.c.orig 2005-12-05 06:45:46.000000000 -0500
-+++ sv.c 2005-12-06 11:56:42.000000000 -0500
-@@ -8519,7 +8519,10 @@ Perl_sv_vcatpvfn(pTHX_ SV *sv, const cha
- if (EXPECT_NUMBER(q, width)) {
- if (*q == '$') {
- ++q;
-- efix = width;
-+ if (width > INT_MAX)
-+ efix=INT_MAX;
-+ else
-+ efix = width;
- } else {
- goto gotwidth;
- }
-@@ -8707,9 +8710,10 @@ Perl_sv_vcatpvfn(pTHX_ SV *sv, const cha
-
- if (vectorize)
- argsv = vecsv;
-- else if (!args)
-- argsv = (efix ? efix <= svmax : svix < svmax) ?
-- svargs[efix ? efix-1 : svix++] : &PL_sv_undef;
-+ else if (!args) {
-+ I32 i = efix ? efix-1 : svix++;
-+ argsv = (i >= 0 && i < svmax) ? svargs[i] : &PL_sv_undef;
-+ }
-
- switch (c = *q++) {
-
-@@ -8972,6 +8976,8 @@ Perl_sv_vcatpvfn(pTHX_ SV *sv, const cha
- *--eptr = '0';
- break;
- case 2:
-+ if (!uv)
-+ alt = FALSE;
- do {
- dig = uv & 1;
- *--eptr = '0' + dig;
-@@ -9274,6 +9280,8 @@ Perl_sv_vcatpvfn(pTHX_ SV *sv, const cha
-
- /* calculate width before utf8_upgrade changes it */
- have = esignlen + zeros + elen;
-+ if (have < zeros)
-+ Perl_croak_nocontext(PL_memory_wrap);
-
- if (is_utf8 != has_utf8) {
- if (is_utf8) {
-@@ -9301,6 +9309,11 @@ Perl_sv_vcatpvfn(pTHX_ SV *sv, const cha
- need = (have > width ? have : width);
- gap = need - have;
-
-+#ifdef PERL_MALLOC_WRAP
-+ if (need >= (((STRLEN)~0) - SvCUR(sv) - dotstrlen - 1)) {
-+ Perl_croak_nocontext(PL_memory_wrap);
-+ }
-+#endif
- SvGROW(sv, SvCUR(sv) + need + dotstrlen + 1);
- p = SvEND(sv);
- if (esignlen && fill == '0') {