/**
 * @file scene_manager_i.h
 * GUI: internal SceneManager API
 */
 
#pragma once
 
#include "scene_manager.h"
#include <m-array.h>
 
ARRAY_DEF(SceneManagerIdStack, uint32_t, M_DEFAULT_OPLIST);
 
typedef struct {
    uint32_t state;
} AppScene;
 
struct SceneManager {
    SceneManagerIdStack_t scene_id_stack;
    const SceneManagerHandlers* scene_handlers;
    void* context;
    AppScene scene[];
};

V658 A value is being subtracted from the unsigned variable. This can result in an overflow. In such a case, the '<' comparison operation can potentially behave unexpectedly. Consider inspecting the 'size - k < 2 * th' expression.

V658 A value is being subtracted from the unsigned variable. This can result in an overflow. In such a case, the '<=' comparison operation can potentially behave unexpectedly. Consider inspecting the 'size - k <= 3 * th' expression.