From: Frank M. Kromann Date: Mon, 29 Mar 2004 18:33:13 +0000 (+0000) Subject: MFH: Fix for #27743. Make sure Money types are converted and returned correct X-Git-Tag: php-4.3.6RC1~23 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=538a818db09631745fc9d109591995057f31905b;p=php MFH: Fix for #27743. Make sure Money types are converted and returned correct --- diff --git a/ext/mssql/php_mssql.c b/ext/mssql/php_mssql.c index 0e964db325..abcab715df 100644 --- a/ext/mssql/php_mssql.c +++ b/ext/mssql/php_mssql.c @@ -796,13 +796,19 @@ static void php_mssql_get_column_content_with_type(mssql_link *mssql_ptr,int off Z_TYPE_P(result) = IS_STRING; break; } - case SQLMONEY4: case SQLFLT4: Z_DVAL_P(result) = (double) floatcol4(offset); Z_TYPE_P(result) = IS_DOUBLE; break; case SQLMONEY: - case SQLMONEYN: + case SQLMONEY4: + case SQLMONEYN: { + DBFLT8 res_buf; + dbconvert(NULL, column_type, dbdata(mssql_ptr->link,offset), 8, SQLFLT8, (LPBYTE)&res_buf, -1); + Z_DVAL_P(result) = res_buf; + Z_TYPE_P(result) = IS_DOUBLE; + } + break; case SQLFLT8: Z_DVAL_P(result) = (double) floatcol8(offset); Z_TYPE_P(result) = IS_DOUBLE;