From: Ilia Alshanetsky Date: Mon, 8 Mar 2010 12:39:44 +0000 (+0000) Subject: Fixed bug #51213 (pdo_mssql is trimming value of the money column). X-Git-Tag: php-5.2.14RC1~101 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=b0f7d1c9cbc25871e2a4c22d0b42ee8e2da46b32;p=php Fixed bug #51213 (pdo_mssql is trimming value of the money column). --- diff --git a/NEWS b/NEWS index 7da55ad352..8c5a3ec525 100644 --- 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). diff --git a/ext/pdo_dblib/dblib_stmt.c b/ext/pdo_dblib/dblib_stmt.c index 6ce7ec7cfa..a9f8cf2f0c 100644 --- a/ext/pdo_dblib/dblib_stmt.c +++ b/ext/pdo_dblib/dblib_stmt.c @@ -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));