diff --git a/lib/flipper_application/elf/elf_file.c b/lib/flipper_application/elf/elf_file.c index 0338144a9..e982e3ca1 100644 --- a/lib/flipper_application/elf/elf_file.c +++ b/lib/flipper_application/elf/elf_file.c @@ -652,7 +652,9 @@ void elf_file_free(ELFFile* elf) { free(elf->debug_link_info.debug_link); } - storage_file_free(elf->fd); + if(elf->fd != NULL) { + storage_file_free(elf->fd); + } free(elf); } @@ -783,6 +785,9 @@ ELFFileLoadStatus elf_file_load_sections(ELFFile* elf) { FURI_LOG_I(TAG, "Total size of loaded sections: %u", total_size); //-V576 } + storage_file_free(elf->fd); + elf->fd = NULL; + return status; }