[libdbd-mysql-perl] 03/04: Update regression-fix-float_type_conversion.patch
Xavier Guimard
xguimard-guest at moszumanska.debian.org
Mon Feb 12 11:51:41 UTC 2018
This is an automated email from the git hooks/post-receive script.
xguimard-guest pushed a commit to branch master
in repository libdbd-mysql-perl.
commit 51ad96adc792daba2bcfa912699d0527e0187d06
Author: Xavier Guimard <x.guimard at free.fr>
Date: Mon Feb 12 12:51:01 2018 +0100
Update regression-fix-float_type_conversion.patch
---
.../regression-fix-float_type_conversion.patch | 70 +++++++++++-----------
1 file changed, 35 insertions(+), 35 deletions(-)
diff --git a/debian/patches/regression-fix-float_type_conversion.patch b/debian/patches/regression-fix-float_type_conversion.patch
index 041ba0a..0743503 100644
--- a/debian/patches/regression-fix-float_type_conversion.patch
+++ b/debian/patches/regression-fix-float_type_conversion.patch
@@ -1,47 +1,47 @@
From: Pali <pali at cpan.org>
Date: Fri, 24 Feb 2017 19:51:36 +0100
Subject: [PATCH] Fix type conversions
-
-Calling SvNV() for magical scalar is not enough for float type conversion.
-It caused problem for Amavis in tainted mode -- all float values were zero.
-On the other hand SvIV() and SvUV() seems to work fine. To be sure that
-correct value of float is in scalar use sv_setnv() with explicit NV float
-value. Similar code is changed also for integers IV/UV.
-
-This patch should fix reported Amavis bug:
-https://github.com/perl5-dbi/DBD-mysql/issues/78
-
-See also reported perl bug about SvNV():
-https://rt.perl.org/Public/Bug/Display.html?id=130801
-
+ Calling SvNV() for magical scalar is not enough for float type conversion.
+ It caused problem for Amavis in tainted mode -- all float values were zero.
+ On the other hand SvIV() and SvUV() seems to work fine. To be sure that
+ correct value of float is in scalar use sv_setnv() with explicit NV float
+ value. Similar code is changed also for integers IV/UV.
+ .
+ This patch should fix reported Amavis bug:
+ https://github.com/perl5-dbi/DBD-mysql/issues/78
+ .
+ See also reported perl bug about SvNV():
+ https://rt.perl.org/Public/Bug/Display.html?id=130801
Bugs: https://github.com/perl5-dbi/DBD-mysql/issues/78
Bugs-Debian: https://bugs.debian.org/856064
+Last-Update: 2018-02-12
+Reviewed-By: Xavier Guimard <x.guimard at free.fr>
--- a/dbdimp.c
+++ b/dbdimp.c
-@@ -4250,8 +4250,7 @@
- switch (mysql_to_perl_type(fields[i].type)) {
- case MYSQL_TYPE_DOUBLE:
- /* Coerce to dobule and set scalar as NV */
-- (void) SvNV(sv);
-- SvNOK_only(sv);
-+ sv_setnv(sv, SvNV(sv));
- break;
-
- case MYSQL_TYPE_LONG:
-@@ -4259,13 +4258,11 @@
- /* Coerce to integer and set scalar as UV resp. IV */
- if (fields[i].flags & UNSIGNED_FLAG)
- {
-- (void) SvUV(sv);
-- SvIOK_only_UV(sv);
-+ sv_setuv(sv, SvUV(sv));
- }
- else
+@@ -4384,8 +4384,7 @@
+ if (!(fields[i].flags & ZEROFILL_FLAG))
{
-- (void) SvIV(sv);
-- SvIOK_only(sv);
-+ sv_setiv(sv, SvIV(sv));
+ /* Coerce to dobule and set scalar as NV */
+- (void) SvNV(sv);
+- SvNOK_only(sv);
++ sv_setnv(sv, SvNV(sv));
}
break;
+@@ -4396,13 +4395,11 @@
+ /* Coerce to integer and set scalar as UV resp. IV */
+ if (fields[i].flags & UNSIGNED_FLAG)
+ {
+- (void) SvUV(sv);
+- SvIOK_only_UV(sv);
++ sv_setuv(sv, SvUV(sv));
+ }
+ else
+ {
+- (void) SvIV(sv);
+- SvIOK_only(sv);
++ sv_setiv(sv, SvIV(sv));
+ }
+ }
+ break;
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-perl/packages/libdbd-mysql-perl.git
More information about the Pkg-perl-cvs-commits
mailing list