result->type = MYSQLND_RES_PS_BUF;
/* result->m.row_decoder = php_mysqlnd_rowp_read_binary_protocol; */
+ result->stored_data = mysqlnd_result_buffered_init(result->field_count, TRUE, result->persistent TSRMLS_CC);
+ if (!result->stored_data) {
+ SET_OOM_ERROR(*conn->error_info);
+ DBG_RETURN(NULL);
+ }
+
ret = result->m.store_result_fetch_data(conn, result, result->meta, TRUE TSRMLS_CC);
result->stored_data->m.fetch_row = mysqlnd_stmt_fetch_row_buffered;
DBG_ENTER("mysqlnd_res::store_result_fetch_data");
- result->stored_data = set = mysqlnd_result_buffered_init(result->field_count, binary_protocol, result->persistent TSRMLS_CC);
+ set = result->stored_data;
if (!set) {
- SET_OOM_ERROR(*conn->error_info);
ret = FAIL;
goto end;
}
CONN_SET_STATE(conn, CONN_FETCHING_DATA);
+ result->stored_data = mysqlnd_result_buffered_init(result->field_count, flags & MYSQLND_STORE_PS, result->persistent TSRMLS_CC);
+ if (!result->stored_data) {
+ SET_OOM_ERROR(*conn->error_info);
+ DBG_RETURN(NULL);
+ }
+
ret = result->m.store_result_fetch_data(conn, result, result->meta, flags & MYSQLND_STORE_PS TSRMLS_CC);
if (FAIL == ret) {
if (result->stored_data) {