From 98b821e04fcd6e46319a5c6e57b0de66b2bdf56e Mon Sep 17 00:00:00 2001 From: Lukasz Pik Date: Thu, 22 Jun 2017 09:58:40 +0200 Subject: [PATCH] [Base-utils][Formattable] Fix crashes when malloc returns null Change-Id: I946f281c2f91f03ba26bb8994c1284b53cab89f1 Signed-off-by: Lukasz Pik --- src/include/utils_i18n_formattable.h | 1 + src/utils_i18n_formattable.cpp | 1 + 2 files changed, 2 insertions(+) diff --git a/src/include/utils_i18n_formattable.h b/src/include/utils_i18n_formattable.h index 43aeaac..38559a3 100644 --- a/src/include/utils_i18n_formattable.h +++ b/src/include/utils_i18n_formattable.h @@ -218,6 +218,7 @@ int i18n_formattable_clone(i18n_formattable_h formattable, i18n_formattable_h *c * @return @c 0 on success, otherwise a negative error value * @retval #I18N_ERROR_NONE Successful * @retval #I18N_ERROR_INVALID_PARAMETER Invalid function parameter + * @retval #I18N_ERROR_OUT_OF_MEMORY Out of memory */ int i18n_formattable_get_array(i18n_formattable_h formattable, i18n_formattable_h **array, int32_t *count); diff --git a/src/utils_i18n_formattable.cpp b/src/utils_i18n_formattable.cpp index 65a8040..968a8e7 100644 --- a/src/utils_i18n_formattable.cpp +++ b/src/utils_i18n_formattable.cpp @@ -137,6 +137,7 @@ int i18n_formattable_get_array(i18n_formattable_h formattable, i18n_formattable_ const Formattable *f_array = ((Formattable *) formattable)->getArray(*count, status); *array = (i18n_formattable_h *)malloc(*count * sizeof(i18n_formattable_h)); + retv_if(*array == NULL, I18N_ERROR_OUT_OF_MEMORY); for (int i = 0; i < *count; i++) { (*array)[i] = (const i18n_formattable_h) &f_array[i]; -- 2.7.4