]> granicus.if.org Git - php/commitdiff
MFH: Fix for #27743. Make sure Money types are converted and returned correct
authorFrank M. Kromann <fmk@php.net>
Mon, 29 Mar 2004 18:33:13 +0000 (18:33 +0000)
committerFrank M. Kromann <fmk@php.net>
Mon, 29 Mar 2004 18:33:13 +0000 (18:33 +0000)
ext/mssql/php_mssql.c

index 0e964db325062d16e23e4c701e5eb484e6e67ffe..abcab715dfddb498e479134062b399c1bb7a1ce2 100644 (file)
@@ -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;