Don't forget the NEWS entry..
      
      --Jani
      

On Fri, 19 Mar 2004, Frank M. Kromann wrote:

>fmk            Fri Mar 19 13:48:18 2004 EDT
>
>  Modified files:              (Branch: PHP_4_3)
>    /php-src/ext/mssql php_mssql.c 
>  Log:
>  MFH Fix for #26589. Crash when selecting many columns of type Money
>  
>http://cvs.php.net/diff.php/php-src/ext/mssql/php_mssql.c?r1=1.86.2.28&r2=1.86.2.29&ty=u
>Index: php-src/ext/mssql/php_mssql.c
>diff -u php-src/ext/mssql/php_mssql.c:1.86.2.28 
>php-src/ext/mssql/php_mssql.c:1.86.2.29
>--- php-src/ext/mssql/php_mssql.c:1.86.2.28    Mon Mar 15 14:45:39 2004
>+++ php-src/ext/mssql/php_mssql.c      Fri Mar 19 13:47:02 2004
>@@ -16,7 +16,7 @@
>    +----------------------------------------------------------------------+
>  */
> 
>-/* $Id: php_mssql.c,v 1.86.2.28 2004/03/15 19:45:39 fmk Exp $ */
>+/* $Id: php_mssql.c,v 1.86.2.29 2004/03/19 18:47:02 fmk Exp $ */
> 
> #ifdef COMPILE_DL_MSSQL
> #define HAVE_MSSQL 1
>@@ -796,10 +796,13 @@
>                       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 SQLFLT8:
>                       Z_DVAL_P(result) = (double) floatcol8(offset);
>                       Z_TYPE_P(result) = IS_DOUBLE;
>@@ -898,8 +901,19 @@
> 
>               if ((column_type != SQLDATETIME && column_type != SQLDATETIM4) || 
> MS_SQL_G(datetimeconvert)) {
> 
>-                      if (column_type == SQLDATETIM4) res_length += 14;
>-                      if (column_type == SQLDATETIME) res_length += 10;
>+                      switch (column_type) {
>+                              case SQLDATETIM4 :
>+                                      res_length += 14;
>+                                      break;
>+                              case SQLDATETIME :
>+                                      res_length += 10;
>+                                      break;
>+                              case SQLMONEY :
>+                              case SQLMONEY4 :
>+                              case SQLMONEYN :
>+                                      res_length += 5;
>+                                      break;
>+                      }
>                       
>                       res_buf = (unsigned char *) emalloc(res_length+1);
>                       res_length = 
> dbconvert(NULL,coltype(offset),dbdata(mssql_ptr->link,offset), res_length, SQLCHAR, 
> res_buf, -1);
>@@ -956,6 +970,9 @@
>                                               case SQLFLT4:
>                                               case SQLFLT8:
>                                               case SQLFLTN:
>+                                              case SQLMONEY4:
>+                                              case SQLMONEY:
>+                                              case SQLMONEYN:
>                                                       
> convert_to_double_ex(&bind->zval);
>                                                       Z_DVAL_P(bind->zval) = 
> *((double *)(dbretdata(mssql_ptr->link,i)));
>                                                       break;
>
>

-- 
https://www.paypal.com/xclick/[EMAIL PROTECTED]&no_note=1&tax=0&currency_code=EUR
 

-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to