Просмотр исходного кода

EvilPortal: Fix sone memory management

Willy-JL 1 год назад
Родитель
Сommit
ffc6588ef8
2 измененных файлов с 3 добавлено и 11 удалено
  1. 3 9
      evil_portal/evil_portal_app.c
  2. 0 2
      evil_portal/evil_portal_app_i.h

+ 3 - 9
evil_portal/evil_portal_app.c

@@ -40,8 +40,6 @@ Evil_PortalApp* evil_portal_app_alloc() {
 
 
     app->view_dispatcher = view_dispatcher_alloc();
     app->view_dispatcher = view_dispatcher_alloc();
 
 
-    app->loading = loading_alloc();
-
     app->scene_manager = scene_manager_alloc(&evil_portal_scene_handlers, app);
     app->scene_manager = scene_manager_alloc(&evil_portal_scene_handlers, app);
     view_dispatcher_enable_queue(app->view_dispatcher);
     view_dispatcher_enable_queue(app->view_dispatcher);
     view_dispatcher_set_event_callback_context(app->view_dispatcher, app);
     view_dispatcher_set_event_callback_context(app->view_dispatcher, app);
@@ -55,8 +53,6 @@ Evil_PortalApp* evil_portal_app_alloc() {
 
 
     view_dispatcher_attach_to_gui(app->view_dispatcher, app->gui, ViewDispatcherTypeFullscreen);
     view_dispatcher_attach_to_gui(app->view_dispatcher, app->gui, ViewDispatcherTypeFullscreen);
 
 
-    app->view_stack = view_stack_alloc();
-
     app->var_item_list = variable_item_list_alloc();
     app->var_item_list = variable_item_list_alloc();
     view_dispatcher_add_view(
     view_dispatcher_add_view(
         app->view_dispatcher,
         app->view_dispatcher,
@@ -91,14 +87,12 @@ void evil_portal_app_free(Evil_PortalApp* app) {
 
 
     // Views
     // Views
     view_dispatcher_remove_view(app->view_dispatcher, Evil_PortalAppViewVarItemList);
     view_dispatcher_remove_view(app->view_dispatcher, Evil_PortalAppViewVarItemList);
+    variable_item_list_free(app->var_item_list);
+    view_dispatcher_remove_view(app->view_dispatcher, Evil_PortalAppViewTextInput);
+    text_input_free(app->text_input);
     view_dispatcher_remove_view(app->view_dispatcher, Evil_PortalAppViewConsoleOutput);
     view_dispatcher_remove_view(app->view_dispatcher, Evil_PortalAppViewConsoleOutput);
-
     text_box_free(app->text_box);
     text_box_free(app->text_box);
     furi_string_free(app->text_box_store);
     furi_string_free(app->text_box_store);
-    text_input_free(app->text_input);
-
-    view_stack_free(app->view_stack);
-    loading_free(app->loading);
 
 
     // View dispatcher
     // View dispatcher
     view_dispatcher_free(app->view_dispatcher);
     view_dispatcher_free(app->view_dispatcher);

+ 0 - 2
evil_portal/evil_portal_app_i.h

@@ -44,8 +44,6 @@ struct Evil_PortalApp {
     TextInput* text_input;
     TextInput* text_input;
     DialogsApp* dialogs;
     DialogsApp* dialogs;
     FuriString* file_path;
     FuriString* file_path;
-    Loading* loading;
-    ViewStack* view_stack;
 
 
     int selected_menu_index;
     int selected_menu_index;
     int selected_option_index[NUM_MENU_ITEMS];
     int selected_option_index[NUM_MENU_ITEMS];