From 7cf389ad2c7a7300ab7b582341f56bf496c1a8fe Mon Sep 17 00:00:00 2001 From: Pierre Joye Date: Thu, 28 Jul 2011 11:01:04 +0000 Subject: - Fix #55301 (mssql part) check if malloc succeded --- ext/mssql/php_mssql.c | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'ext/mssql/php_mssql.c') diff --git a/ext/mssql/php_mssql.c b/ext/mssql/php_mssql.c index 5a86256413..1cc5564a3e 100644 --- a/ext/mssql/php_mssql.c +++ b/ext/mssql/php_mssql.c @@ -685,6 +685,13 @@ static void php_mssql_do_connect(INTERNAL_FUNCTION_PARAMETERS, int persistent) /* hash it up */ mssql_ptr = (mssql_link *) malloc(sizeof(mssql_link)); + if (!mssql_ptr) { + efree(hashed_details); + dbfreelogin(mssql.login); + dbclose(mssql.link); + RETURN_FALSE; + } + memcpy(mssql_ptr, &mssql, sizeof(mssql_link)); Z_TYPE(new_le) = le_plink; new_le.ptr = mssql_ptr; -- cgit v1.2.1