|
|
@@ -38,10 +38,9 @@ static void input_callback(InputEvent* input_event, void* ctx) {
|
|
|
|
|
|
static void draw_callback(Canvas* const canvas, void* ctx) {
|
|
|
furi_assert(ctx);
|
|
|
-
|
|
|
const AppState* app_state = ctx;
|
|
|
furi_mutex_acquire(app_state->mutex, FuriWaitForever);
|
|
|
- if(app_state == NULL) return;
|
|
|
+
|
|
|
const GameState* game_state = &app_state->game;
|
|
|
|
|
|
canvas_clear(canvas);
|
|
|
@@ -326,16 +325,18 @@ int32_t game_reversi_app() {
|
|
|
furi_mutex_acquire(app_state.mutex, FuriWaitForever);
|
|
|
app_state.selected_menu_item = 0;
|
|
|
app_state.screen = AppScreenMenu;
|
|
|
- view_port_update(view_port);
|
|
|
+
|
|
|
furi_mutex_release(app_state.mutex);
|
|
|
+ view_port_update(view_port);
|
|
|
continue;
|
|
|
}
|
|
|
if(input.type != InputTypePress) continue;
|
|
|
|
|
|
furi_mutex_acquire(app_state.mutex, FuriWaitForever);
|
|
|
is_finished = !handle_key(&app_state, input.key);
|
|
|
- view_port_update(view_port);
|
|
|
+
|
|
|
furi_mutex_release(app_state.mutex);
|
|
|
+ view_port_update(view_port);
|
|
|
}
|
|
|
view_port_update(view_port);
|
|
|
}
|