From c6326915aeeaeb15a9b71620a3d2a1c8b51f2903 Mon Sep 17 00:00:00 2001 From: WillyJL <49810075+Willy-JL@users.noreply.github.com> Date: Thu, 5 Sep 2024 23:13:03 +0200 Subject: [PATCH] DialogEx: Fix NULL ptr crash (#3878) --- applications/services/gui/modules/dialog_ex.c | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/applications/services/gui/modules/dialog_ex.c b/applications/services/gui/modules/dialog_ex.c index 75209a408041..d27de124206d 100644 --- a/applications/services/gui/modules/dialog_ex.c +++ b/applications/services/gui/modules/dialog_ex.c @@ -222,7 +222,7 @@ void dialog_ex_set_header( dialog_ex->view, DialogExModel * model, { - furi_string_set(model->header.text, text); + furi_string_set(model->header.text, text ? text : ""); model->header.x = x; model->header.y = y; model->header.horizontal = horizontal; @@ -243,7 +243,7 @@ void dialog_ex_set_text( dialog_ex->view, DialogExModel * model, { - furi_string_set(model->text.text, text); + furi_string_set(model->text.text, text ? text : ""); model->text.x = x; model->text.y = y; model->text.horizontal = horizontal; @@ -268,7 +268,10 @@ void dialog_ex_set_icon(DialogEx* dialog_ex, uint8_t x, uint8_t y, const Icon* i void dialog_ex_set_left_button_text(DialogEx* dialog_ex, const char* text) { furi_check(dialog_ex); with_view_model( - dialog_ex->view, DialogExModel * model, { furi_string_set(model->left_text, text); }, true); + dialog_ex->view, + DialogExModel * model, + { furi_string_set(model->left_text, text ? text : ""); }, + true); } void dialog_ex_set_center_button_text(DialogEx* dialog_ex, const char* text) { @@ -276,7 +279,7 @@ void dialog_ex_set_center_button_text(DialogEx* dialog_ex, const char* text) { with_view_model( dialog_ex->view, DialogExModel * model, - { furi_string_set(model->center_text, text); }, + { furi_string_set(model->center_text, text ? text : ""); }, true); } @@ -285,7 +288,7 @@ void dialog_ex_set_right_button_text(DialogEx* dialog_ex, const char* text) { with_view_model( dialog_ex->view, DialogExModel * model, - { furi_string_set(model->right_text, text); }, + { furi_string_set(model->right_text, text ? text : ""); }, true); }