]> granicus.if.org Git - php/commitdiff
Fixed bug #51213 (pdo_mssql is trimming value of the money column).
authorIlia Alshanetsky <iliaa@php.net>
Mon, 8 Mar 2010 12:39:44 +0000 (12:39 +0000)
committerIlia Alshanetsky <iliaa@php.net>
Mon, 8 Mar 2010 12:39:44 +0000 (12:39 +0000)
NEWS
ext/pdo_dblib/dblib_stmt.c

diff --git a/NEWS b/NEWS
index 7da55ad352bd012990556771791373a7f4846b76..8c5a3ec5255d70fd349684b9dddab5eceb7e5556 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -3,6 +3,8 @@ PHP                                                                        NEWS
 ?? ??? 2010, PHP 5.2.14
 - Updated timezone database to version 2010.3. (Derick)
 
+- Fixed bug #51213 (pdo_mssql is trimming value of the money column). (Ilia,
+  alexr at oplot dot com)
 - Fixed bug #51192 (FILTER_VALIDATE_URL will invalidate a hostname that
   includes '-'). (Adam, solar at azrael dot ws).
 - Fixed bug #51190 (ftp_put() returns false when transfer was successful).
index 6ce7ec7cfaee94b512e167ddae3f917c4c68618f..a9f8cf2f0c6d5f2efd932098dd070f2928b04353 100644 (file)
@@ -166,7 +166,14 @@ static int pdo_dblib_stmt_execute(pdo_stmt_t *stmt TSRMLS_DC)
                                                memcpy(val->data, dbdata(H->link, i+1), val->len);
                                                val->data[val->len] = '\0';
                                                break;
-
+                                       case SQLMONEY:
+                                       case SQLMONEY4:
+                                       case SQLMONEYN: {
+                                               DBFLT8 money_value;
+                                               dbconvert(NULL, S->cols[i].coltype, dbdata(H->link, i+1), dbdatlen(H->link, i+1), SQLFLT8, (LPBYTE)&money_value, val->len);
+                                               val->len = spprintf(val->data, 0, "%.4f", money_value);
+                                               }
+                                               break;
                                        default:
                                                if (dbwillconvert(S->cols[i].coltype, SQLCHAR)) {
                                                        val->len = 32 + (2 * dbdatlen(H->link, i+1));