1
mirror of https://github.com/DarkFlippers/unleashed-firmware.git synced 2025-12-12 12:42:30 +04:00

Prevent idle priority threads from potentially starving the FreeRTOS idle task (#3909)

* FuriThread: Make FuriThreadPriorityIdle equal to the FreeRTOS one, remove FuriThreadPriorityNone
  This magic constant was meaningless,
  FuriThreadPriorityNormal is now assigned by default instead.
* Make furi_thread_list_process private
  Its 'runtime' parameter is to be obtained from FreeRTOS,
  which means apps cannot do it.
* DirectDraw: Remove an useless include and fix memory leak
  Makes this debug app compileable with uFBT out of the box

Co-authored-by: あく <alleteam@gmail.com>
This commit is contained in:
Silent
2024-10-02 19:11:13 +02:00
committed by GitHub
parent 7fc209f001
commit 56d2923f1f
8 changed files with 35 additions and 25 deletions

View File

@@ -1,6 +1,5 @@
#include <furi.h>
#include <gui/gui.h>
#include <gui/canvas_i.h>
#include <input/input.h>
#define BUFFER_SIZE (32U)
@@ -42,10 +41,11 @@ static DirectDraw* direct_draw_alloc(void) {
static void direct_draw_free(DirectDraw* instance) {
furi_pubsub_unsubscribe(instance->input, instance->input_subscription);
instance->canvas = NULL;
gui_direct_draw_release(instance->gui);
furi_record_close(RECORD_GUI);
furi_record_close(RECORD_INPUT_EVENTS);
free(instance);
}
static void direct_draw_block(Canvas* canvas, uint32_t size, uint32_t counter) {