]> granicus.if.org Git - php/commitdiff
- Fix INT8 returning garbage because ifx_int8toasc does not null_terminate
authorDanny Heijl <danny@php.net>
Sat, 5 Aug 2000 13:14:44 +0000 (13:14 +0000)
committerDanny Heijl <danny@php.net>
Sat, 5 Aug 2000 13:14:44 +0000 (13:14 +0000)
  the returned string. (danny)

ext/informix/ifx.ec

index f07f2480d4a04202e0b0fd0d71b4cad362f74821..255af0c8e0efa2573e658fe45c7b32a85313d73c 100644 (file)
@@ -2110,7 +2110,11 @@ $ifdef HAVE_IFX_IUS;
             case SQLSERIAL8   :
             case SQLINT8   :
                 EXEC SQL GET DESCRIPTOR :descrpid VALUE :i :int8_var = DATA;
+               memset(string_data, ' ', sizeof(string_data));
                 ifx_int8toasc(&int8_var,string_data,200);
+                p = string_data;         /* rtrim string_data */
+                while ((*p != ' ') && (p < &string_data[sizeof(string_data) - 1])) ++p;
+                *p = 0;                
                 add_assoc_string(return_value, fieldname, string_data, DUP);
                 break;
             case SQLLVARCHAR:
@@ -2485,7 +2489,11 @@ $ifdef HAVE_IFX_IUS;
                 case SQLSERIAL8:
                 case SQLINT8   :
                     EXEC SQL GET DESCRIPTOR :descrpid VALUE :i :int8_var = DATA;
+                    memset(string_data, ' ', sizeof(string_data));
                     ifx_int8toasc(&int8_var,string_data,200);
+                    p = string_data;         /* rtrim string_data */
+                    while ((*p != ' ') && (p < &string_data[sizeof(string_data) - 1])) ++p;
+                    *p = 0;            
                     php_printf("<td>%s</td>", string_data);
                     break;
                 case SQLLVARCHAR: