From 0177d12a863b62ed381e8848c14366d895a973d9 Mon Sep 17 00:00:00 2001 From: Willy-JL Date: Thu, 2 Mar 2023 23:24:32 +0000 Subject: [PATCH] Fix badkb connection init failure handling --- applications/main/bad_kb/bad_kb_app.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/applications/main/bad_kb/bad_kb_app.c b/applications/main/bad_kb/bad_kb_app.c index 71a3ccace..2934a50c2 100644 --- a/applications/main/bad_kb/bad_kb_app.c +++ b/applications/main/bad_kb/bad_kb_app.c @@ -150,6 +150,7 @@ BadKbApp* bad_kb_app_alloc(char* arg) { if(furi_hal_usb_is_locked()) { app->error = BadKbAppErrorCloseRpc; + app->conn_init_thread = NULL; scene_manager_next_scene(app->scene_manager, BadKbSceneError); } else { app->conn_init_thread = furi_thread_alloc_ex( @@ -224,9 +225,11 @@ void bad_kb_app_free(BadKbApp* app) { furi_string_free(app->file_path); furi_string_free(app->keyboard_layout); - furi_thread_join(app->conn_init_thread); + if(app->conn_init_thread) { + furi_thread_join(app->conn_init_thread); + furi_thread_free(app->conn_init_thread); + } bad_kb_connection_deinit(app); - furi_thread_free(app->conn_init_thread); free(app); }