From 17d4f384030dbfffa4fa8e14de1ebe4a362fbe62 Mon Sep 17 00:00:00 2001 From: Georg Richter Date: Thu, 30 Mar 2023 13:30:53 +0200 Subject: [PATCH] Fix for CONC-642: Set CR_OUT_OF_MEMORY error Set CR_OUT_OF_MEMORY error in mysql_use_result() api function if allocation of memory failed. --- libmariadb/mariadb_lib.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/libmariadb/mariadb_lib.c b/libmariadb/mariadb_lib.c index 39140260..333bf5a6 100644 --- a/libmariadb/mariadb_lib.c +++ b/libmariadb/mariadb_lib.c @@ -2482,12 +2482,16 @@ mysql_use_result(MYSQL *mysql) } if (!(result=(MYSQL_RES*) calloc(1, sizeof(*result)+ sizeof(ulong)*mysql->field_count))) + { + SET_CLIENT_ERROR(mysql, CR_OUT_OF_MEMORY, SQLSTATE_UNKNOWN, 0); return(0); + } result->lengths=(ulong*) (result+1); if (!(result->row=(MYSQL_ROW) malloc(sizeof(result->row[0])*(mysql->field_count+1)))) { /* Ptrs: to one row */ free(result); + SET_CLIENT_ERROR(mysql, CR_OUT_OF_MEMORY, SQLSTATE_UNKNOWN, 0); return(0); } result->fields= mysql->fields;