summaryrefslogtreecommitdiff
path: root/sv.c
diff options
context:
space:
mode:
authorFather Chrysostomos <sprout@cpan.org>2014-12-10 18:15:37 -0800
committerFather Chrysostomos <sprout@cpan.org>2014-12-10 20:21:06 -0800
commit1d55083cd581c158cb108c021e3625e4686463f8 (patch)
tree80796f9ebfdfecdb7edd6c53d1613942ee4a10c1 /sv.c
parent9911fc4e591c446844059afc8e5ec87c56a7b33e (diff)
downloadperl-1d55083cd581c158cb108c021e3625e4686463f8.tar.gz
Don’t do string overloading for printf int formats
See <20141130160250.GC31019@pjcj.net>. Commit 354b74ae6f broke this.
Diffstat (limited to 'sv.c')
-rw-r--r--sv.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/sv.c b/sv.c
index 04b1cbbad1..65acdee561 100644
--- a/sv.c
+++ b/sv.c
@@ -11703,6 +11703,8 @@ Perl_sv_vcatpvfn_flags(pTHX_ SV *const sv, const char *const pat, const STRLEN p
if (argsv && strchr("BbcDdiOopuUXx",*q)) {
/* XXX va_arg(*args) case? need peek, use va_copy? */
SvGETMAGIC(argsv);
+ if (UNLIKELY(SvAMAGIC(argsv)))
+ argsv = sv_2num(argsv);
infnan = UNLIKELY(isinfnansv(argsv));
}