Skip to content

Commit c5f8871

Browse files
committed
Fix problem getting return value from stored procedure when it returns multiple results
1 parent 04764e1 commit c5f8871

File tree

1 file changed

+4
-1
lines changed

1 file changed

+4
-1
lines changed

ext/mssql/php_mssql.c

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1080,7 +1080,7 @@ static int _mssql_fetch_batch(mssql_link *mssql_ptr, mssql_result *result, int r
10801080
result->lastresult = retvalue;
10811081
}
10821082
efree(column_types);
1083-
if (result->statement) {
1083+
if (result->statement && (retvalue == NO_MORE_RESULTS || retvalue == NO_MORE_RPC_RESULTS)) {
10841084
_mssql_get_sp_result(mssql_ptr, result->statement TSRMLS_CC);
10851085
}
10861086
return i;
@@ -1803,6 +1803,9 @@ PHP_FUNCTION(mssql_next_result)
18031803
RETURN_FALSE;
18041804
}
18051805
else if (retvalue == NO_MORE_RESULTS || retvalue == NO_MORE_RPC_RESULTS) {
1806+
if (result->statement) {
1807+
_mssql_get_sp_result(mssql_ptr, result->statement TSRMLS_CC);
1808+
}
18061809
RETURN_FALSE;
18071810
}
18081811
else {

0 commit comments

Comments
 (0)