@@ -3634,12 +3634,13 @@ static bool _php_pgsql_link_has_results(PGconn *pgsql) /* {{{ */
3634
3634
PHP_FUNCTION (pg_send_query )
3635
3635
{
3636
3636
zval * pgsql_link ;
3637
- zend_string * query ;
3637
+ char * query ;
3638
+ size_t len ;
3638
3639
PGconn * pgsql ;
3639
3640
int is_non_blocking ;
3640
3641
int ret ;
3641
3642
3642
- if (zend_parse_parameters (ZEND_NUM_ARGS (), "rS " , & pgsql_link , & query ) == FAILURE ) {
3643
+ if (zend_parse_parameters (ZEND_NUM_ARGS (), "rs " , & pgsql_link , & query , & len ) == FAILURE ) {
3643
3644
RETURN_THROWS ();
3644
3645
}
3645
3646
@@ -3660,16 +3661,16 @@ PHP_FUNCTION(pg_send_query)
3660
3661
}
3661
3662
3662
3663
if (is_non_blocking ) {
3663
- if (!PQsendQuery (pgsql , ZSTR_VAL ( query ) )) {
3664
+ if (!PQsendQuery (pgsql , query )) {
3664
3665
RETURN_FALSE ;
3665
3666
}
3666
3667
ret = PQflush (pgsql );
3667
3668
} else {
3668
- if (!PQsendQuery (pgsql , ZSTR_VAL ( query ) )) {
3669
+ if (!PQsendQuery (pgsql , query )) {
3669
3670
if ((PGG (auto_reset_persistent ) & 2 ) && PQstatus (pgsql ) != CONNECTION_OK ) {
3670
3671
PQreset (pgsql );
3671
3672
}
3672
- if (!PQsendQuery (pgsql , ZSTR_VAL ( query ) )) {
3673
+ if (!PQsendQuery (pgsql , query )) {
3673
3674
RETURN_FALSE ;
3674
3675
}
3675
3676
}
@@ -3704,12 +3705,13 @@ PHP_FUNCTION(pg_send_query_params)
3704
3705
zval * pgsql_link , * pv_param_arr , * tmp ;
3705
3706
int num_params = 0 ;
3706
3707
char * * params = NULL ;
3707
- zend_string * query ;
3708
+ char * query ;
3709
+ size_t query_len ;
3708
3710
PGconn * pgsql ;
3709
3711
int is_non_blocking ;
3710
3712
int ret ;
3711
3713
3712
- if (zend_parse_parameters (ZEND_NUM_ARGS (), "rSa " , & pgsql_link , & query , & pv_param_arr ) == FAILURE ) {
3714
+ if (zend_parse_parameters (ZEND_NUM_ARGS (), "rsa " , & pgsql_link , & query , & query_len , & pv_param_arr ) == FAILURE ) {
3713
3715
RETURN_THROWS ();
3714
3716
}
3715
3717
@@ -3750,7 +3752,7 @@ PHP_FUNCTION(pg_send_query_params)
3750
3752
} ZEND_HASH_FOREACH_END ();
3751
3753
}
3752
3754
3753
- if (PQsendQueryParams (pgsql , ZSTR_VAL ( query ) , num_params , NULL , (const char * const * )params , NULL , NULL , 0 )) {
3755
+ if (PQsendQueryParams (pgsql , query , num_params , NULL , (const char * const * )params , NULL , NULL , 0 )) {
3754
3756
_php_pgsql_free_params (params , num_params );
3755
3757
} else if (is_non_blocking ) {
3756
3758
_php_pgsql_free_params (params , num_params );
@@ -3759,7 +3761,7 @@ PHP_FUNCTION(pg_send_query_params)
3759
3761
if ((PGG (auto_reset_persistent ) & 2 ) && PQstatus (pgsql ) != CONNECTION_OK ) {
3760
3762
PQreset (pgsql );
3761
3763
}
3762
- if (!PQsendQueryParams (pgsql , ZSTR_VAL ( query ) , num_params , NULL , (const char * const * )params , NULL , NULL , 0 )) {
3764
+ if (!PQsendQueryParams (pgsql , query , num_params , NULL , (const char * const * )params , NULL , NULL , 0 )) {
3763
3765
_php_pgsql_free_params (params , num_params );
3764
3766
RETURN_FALSE ;
3765
3767
}
0 commit comments