X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-pq;a=blobdiff_plain;f=src%2Fphp_pq_params.c;h=149da750ede70bf98224196e8b7564e8b54690ed;hp=0c8278e95593c37ebd2475fe4b0b81b5e5311861;hb=dd52670ccf9557faa0152babbfcf72b5c1be2ceb;hpb=88440266c0a9fa8354688b5ed0d2a6cc3bf04db5 diff --git a/src/php_pq_params.c b/src/php_pq_params.c index 0c8278e..149da75 100644 --- a/src/php_pq_params.c +++ b/src/php_pq_params.c @@ -24,6 +24,8 @@ #include "php_pq.h" #include "php_pq_params.h" +#undef PHP_PQ_TYPE +#include "php_pq_type.h" void php_pq_params_set_type_conv(php_pq_params_t *p, HashTable *conv) { @@ -137,6 +139,7 @@ static int apply_to_param_from_array(void *p TSRMLS_DC, int argc, va_list argv, if (*zparam != *((zval **) p)) { zval_ptr_dtor(zparam); } + efree(tmp); break; } } @@ -186,19 +189,11 @@ static void php_pq_params_set_param(php_pq_params_t *p, unsigned index, zval **z case IS_DOUBLE: SEPARATE_ZVAL(zp); Z_TYPE_PP(zp) = IS_STRING; - Z_STRLEN_PP(zp) = spprintf(&Z_STRVAL_PP(zp), 0, "%F", Z_DVAL_PP((zval **)p)); + Z_STRLEN_PP(zp) = spprintf(&Z_STRVAL_PP(zp), 0, "%F", Z_DVAL_PP(zpp)); break; case IS_ARRAY: { - -#if HAVE_PHP_PQ_TYPE_H -# undef PHP_PQ_TYPE -# include "php_pq_type.h" -#else -# define PHP_PQ_TYPE_OF_ARRAY(oid) 0 -#endif - zval *tmp; MAKE_STD_ZVAL(tmp); Z_TYPE_P(tmp) = IS_STRING;