diff options
Diffstat (limited to 'ext/mssql/php_mssql.c')
| -rw-r--r-- | ext/mssql/php_mssql.c | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/ext/mssql/php_mssql.c b/ext/mssql/php_mssql.c index 1956b22af4..31859e953d 100644 --- a/ext/mssql/php_mssql.c +++ b/ext/mssql/php_mssql.c @@ -1061,6 +1061,9 @@ static int _mssql_fetch_batch(mssql_link *mssql_ptr, mssql_result *result, int r result->lastresult = retvalue; } efree(column_types); + if (result->statement) { + _mssql_get_sp_result(mssql_ptr, result->statement TSRMLS_CC); + } return i; } @@ -1788,9 +1791,6 @@ PHP_FUNCTION(mssql_next_result) RETURN_FALSE; } else if (retvalue == NO_MORE_RESULTS || retvalue == NO_MORE_RPC_RESULTS) { - if (result->statement) { - _mssql_get_sp_result(result->mssql_ptr, result->statement TSRMLS_CC); - } RETURN_FALSE; } else { @@ -2120,11 +2120,8 @@ PHP_FUNCTION(mssql_execute) result->num_fields = num_fields; result->fields = (mssql_field *) emalloc(sizeof(mssql_field)*num_fields); - result->num_rows = _mssql_fetch_batch(mssql_ptr, result, retvalue TSRMLS_CC); result->statement = statement; - } - else { - _mssql_get_sp_result(mssql_ptr, statement TSRMLS_CC); + result->num_rows = _mssql_fetch_batch(mssql_ptr, result, retvalue TSRMLS_CC); } } } |
