Change 19931 by [EMAIL PROTECTED] on 2003/07/02 11:34:49
Fix for [perl #22759 insufficient format string checking];
using ewix makes no sense, assuming evix was intended,
no old tests fail; add the test case.
Affected files ...
... //depot/perl/sv.c#673 edit
... //depot/perl/t/op/sprintf.t#40 edit
Differences ...
==== //depot/perl/sv.c#673 (text) ====
Index: perl/sv.c
--- perl/sv.c#672~19854~ Wed Jun 25 22:32:02 2003
+++ perl/sv.c Wed Jul 2 04:34:49 2003
@@ -8668,7 +8668,7 @@
vecsv = va_arg(*args, SV*);
else
vecsv = (evix ? evix <= svmax : svix < svmax) ?
- svargs[ewix ? ewix-1 : svix++] : &PL_sv_undef;
+ svargs[evix ? evix-1 : svix++] : &PL_sv_undef;
dotstr = SvPVx(vecsv, dotstrlen);
if (DO_UTF8(vecsv))
is_utf8 = TRUE;
==== //depot/perl/t/op/sprintf.t#40 (xtext) ====
Index: perl/t/op/sprintf.t
--- perl/t/op/sprintf.t#39~18951~ Wed Mar 12 02:52:17 2003
+++ perl/t/op/sprintf.t Wed Jul 2 04:34:49 2003
@@ -380,3 +380,4 @@
>%*.*K %d< >[13, 29, 76]< >%*.*K 13 INVALID<
>%4$K %d< >[45, 67]< >%4$K 45 INVALID<
>%d %K %d< >[23, 45]< >23 %K 45 INVALID<
+>%*v*999\$d %d %d< >[11, 22, 33]< >%*v*999\$d 11 22 INVALID<
End of Patch.