summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ext/mysqli/mysqli_api.c4
-rw-r--r--ext/mysqlnd/mysql_float_to_double.h (renamed from ext/standard/float_to_double.c)13
-rw-r--r--ext/mysqlnd/mysqlnd_ps_codec.c4
-rw-r--r--ext/standard/config.m43
-rw-r--r--ext/standard/config.w322
-rw-r--r--ext/standard/float_to_double.h35
6 files changed, 15 insertions, 46 deletions
diff --git a/ext/mysqli/mysqli_api.c b/ext/mysqli/mysqli_api.c
index 6185c01b82..1d54bf37b2 100644
--- a/ext/mysqli/mysqli_api.c
+++ b/ext/mysqli/mysqli_api.c
@@ -33,7 +33,7 @@
#include "ext/standard/php_smart_str.h"
#include "php_mysqli_structs.h"
#include "mysqli_priv.h"
-#include "ext/standard/float_to_double.h"
+#include "ext/mysqlnd/mysql_float_to_double.h"
#if !defined(MYSQLI_USE_MYSQLND)
@@ -1062,7 +1062,7 @@ void mysqli_stmt_fetch_libmysql(INTERNAL_FUNCTION_PARAMETERS)
#ifndef NOT_FIXED_DEC
# define NOT_FIXED_DEC 31
#endif
- dval = float_to_double(*(float *)stmt->result.buf[i].val,
+ dval = mysql_float_to_double(*(float *)stmt->result.buf[i].val,
(stmt->stmt->fields[i].decimals >= NOT_FIXED_DEC) ? -1 :
stmt->stmt->fields[i].decimals);
} else {
diff --git a/ext/standard/float_to_double.c b/ext/mysqlnd/mysql_float_to_double.h
index 5aff1fe9c4..2ccce7d14d 100644
--- a/ext/standard/float_to_double.c
+++ b/ext/mysqlnd/mysql_float_to_double.h
@@ -16,11 +16,14 @@
+----------------------------------------------------------------------+
*/
+#ifndef MYSQL_FLOAT_TO_DOUBLE_H
+#define MYSQL_FLOAT_TO_DOUBLE_H
+
+#include "main/php.h"
#include <float.h>
-#include "float_to_double.h"
#include "main/snprintf.h"
-#define MAX_BUF_LEN 255
+#define MAX_CHAR_BUF_LEN 255
#ifndef FLT_DIG
# define FLT_DIG 6
@@ -33,8 +36,8 @@
* is less than zero, then a gcvt(3) like logic is used with the significant
* digits set to FLT_DIG i.e. 6.
*/
-double float_to_double(float fp4, int decimals) {
- char num_buf[MAX_BUF_LEN]; /* Over allocated */
+static inline double mysql_float_to_double(float fp4, int decimals) {
+ char num_buf[MAX_CHAR_BUF_LEN]; /* Over allocated */
if (decimals < 0) {
php_gcvt(fp4, FLT_DIG, '.', 'e', num_buf);
@@ -53,3 +56,5 @@ double float_to_double(float fp4, int decimals) {
* vim600: noet sw=4 ts=4 fdm=marker
* vim<600: noet sw=4 ts=4
*/
+
+#endif /* MYSQL_FLOAT_TO_DOUBLE_H */
diff --git a/ext/mysqlnd/mysqlnd_ps_codec.c b/ext/mysqlnd/mysqlnd_ps_codec.c
index e718b4bad8..a5b3b04e90 100644
--- a/ext/mysqlnd/mysqlnd_ps_codec.c
+++ b/ext/mysqlnd/mysqlnd_ps_codec.c
@@ -24,7 +24,7 @@
#include "mysqlnd_wireprotocol.h"
#include "mysqlnd_priv.h"
#include "mysqlnd_debug.h"
-#include "ext/standard/float_to_double.h"
+#include "ext/mysqlnd/mysql_float_to_double.h"
#define MYSQLND_SILENT
@@ -186,7 +186,7 @@ ps_fetch_float(zval * zv, const MYSQLND_FIELD * const field, unsigned int pack_l
# define NOT_FIXED_DEC 31
#endif
- dval = float_to_double(fval, (field->decimals >= NOT_FIXED_DEC) ? -1 : field->decimals);
+ dval = mysql_float_to_double(fval, (field->decimals >= NOT_FIXED_DEC) ? -1 : field->decimals);
ZVAL_DOUBLE(zv, dval);
DBG_VOID_RETURN;
diff --git a/ext/standard/config.m4 b/ext/standard/config.m4
index 807f5f0b44..3d00d88dda 100644
--- a/ext/standard/config.m4
+++ b/ext/standard/config.m4
@@ -603,8 +603,7 @@ PHP_NEW_EXTENSION(standard, array.c base64.c basic_functions.c browscap.c crc32.
incomplete_class.c url_scanner_ex.c ftp_fopen_wrapper.c \
http_fopen_wrapper.c php_fopen_wrapper.c credits.c css.c \
var_unserializer.c ftok.c sha1.c user_filters.c uuencode.c \
- filters.c proc_open.c streamsfuncs.c http.c password.c \
- float_to_double.c)
+ filters.c proc_open.c streamsfuncs.c http.c password.c)
PHP_ADD_MAKEFILE_FRAGMENT
PHP_INSTALL_HEADERS([ext/standard/])
diff --git a/ext/standard/config.w32 b/ext/standard/config.w32
index 525f1da422..5f24641b4d 100644
--- a/ext/standard/config.w32
+++ b/ext/standard/config.w32
@@ -20,7 +20,7 @@ EXTENSION("standard", "array.c base64.c basic_functions.c browscap.c \
url_scanner_ex.c ftp_fopen_wrapper.c http_fopen_wrapper.c \
php_fopen_wrapper.c credits.c css.c var_unserializer.c ftok.c sha1.c \
user_filters.c uuencode.c filters.c proc_open.c password.c \
- streamsfuncs.c http.c flock_compat.c float_to_double.c", false /* never shared */);
+ streamsfuncs.c http.c flock_compat.c", false /* never shared */);
PHP_INSTALL_HEADERS("", "ext/standard");
if (PHP_MBREGEX != "no") {
CHECK_HEADER_ADD_INCLUDE("oniguruma.h", "CFLAGS_STANDARD", PHP_MBREGEX + ";ext\\mbstring\\oniguruma")
diff --git a/ext/standard/float_to_double.h b/ext/standard/float_to_double.h
deleted file mode 100644
index bd70ee3c22..0000000000
--- a/ext/standard/float_to_double.h
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- +----------------------------------------------------------------------+
- | PHP Version 5 |
- +----------------------------------------------------------------------+
- | Copyright (c) 2006-2014 The PHP Group |
- +----------------------------------------------------------------------+
- | This source file is subject to version 3.01 of the PHP license, |
- | that is bundled with this package in the file LICENSE, and is |
- | available through the world-wide-web at the following url: |
- | http://www.php.net/license/3_01.txt |
- | If you did not receive a copy of the PHP license and are unable to |
- | obtain it through the world-wide-web, please send a note to |
- | license@php.net so we can mail you a copy immediately. |
- +----------------------------------------------------------------------+
- | Authors: Keyur Govande <kgovande@gmail.com> |
- +----------------------------------------------------------------------+
-*/
-
-#ifndef FLOAT_TO_DOUBLE_H
-#define FLOAT_TO_DOUBLE_H
-
-#include "main/php.h"
-
-PHPAPI double float_to_double(float fp4, int decimals);
-
-#endif /* FLOAT_TO_DOUBLE_H */
-
-/*
- * Local variables:
- * tab-width: 4
- * c-basic-offset: 4
- * End:
- * vim600: noet sw=4 ts=4 fdm=marker
- * vim<600: noet sw=4 ts=4
- */