From 433cb868d65545f021a63d994febae21a1abe8aa Mon Sep 17 00:00:00 2001 From: Andrey Hristov Date: Tue, 25 May 2010 23:18:13 +0000 Subject: Handle the situation when MYSQLND_PROTOCOL's methods return NULL. mysqlnd should not crash but gracefully return with an error. --- ext/mysqlnd/mysqlnd_result.c | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'ext/mysqlnd/mysqlnd_result.c') diff --git a/ext/mysqlnd/mysqlnd_result.c b/ext/mysqlnd/mysqlnd_result.c index 00368aaa0f..5590375763 100644 --- a/ext/mysqlnd/mysqlnd_result.c +++ b/ext/mysqlnd/mysqlnd_result.c @@ -493,6 +493,11 @@ mysqlnd_query_read_result_set_header(MYSQLND *conn, MYSQLND_STMT * s TSRMLS_DC) /* Check for SERVER_STATUS_MORE_RESULTS if needed */ fields_eof = conn->protocol->m.get_eof_packet(conn->protocol, FALSE TSRMLS_CC); + if (!fields_eof) { + SET_OOM_ERROR(conn->error_info); + ret = FAIL; + break; + } if (FAIL == (ret = PACKET_READ(fields_eof, conn))) { DBG_ERR("Error ocurred while reading the EOF packet"); result->m.free_result_contents(result TSRMLS_CC); -- cgit v1.2.1