Use non-newlib function to allocate memory for reent structs to make things simpler
Some checks failed
Publish Docker Image / build-and-push-image (push) Has been cancelled

This commit is contained in:
Maschell
2026-04-14 17:21:16 +02:00
parent 1025c3d2d7
commit 2f0b030350
3 changed files with 32 additions and 49 deletions

View File

@@ -5,26 +5,16 @@
extern "C" {
#endif
typedef enum wums_loader_init_reent_errors_t_ {
WUMSReent_ERROR_NONE = 0,
WUMSReent_ERROR_GLOBAL_REENT_REQUESTED = 1,
WUMSReent_ERROR_NO_THREAD = 2,
} wums_loader_init_reent_errors_t_;
typedef void *(*WUMSReent_GetReentContext)(const void *moduleId, wums_loader_init_reent_errors_t_ *outError);
typedef void *(*WUMSReent_SetSentinel)();
typedef void (*WUMSReent_RestoreHead)(void *oldHead);
typedef bool (*WUMSReent_AddReentContext)(const void *moduleId, void *reentPtr, void (*cleanupFn)(void *), void *oldHead);
typedef bool (*WUMSReent_GetReentContext)(const void *moduleId, void **outPtr);
typedef bool (*WUMSReent_AddReentContext)(const void *moduleId, void *reentPtr, void (*cleanupFn)(void *));
typedef uint32_t WUMS_REENT_API_VERSION;
#define WUMS_REENT_CUR_API_VERSION 0x01
#define WUMS_REENT_CUR_API_VERSION 0x02
typedef struct wums_loader_init_reent_args_t_ {
WUMS_REENT_API_VERSION version;
WUMSReent_GetReentContext get_context_ptr;
WUMSReent_SetSentinel set_sentinel_ptr;
WUMSReent_RestoreHead restore_head_ptr;
WUMSReent_AddReentContext add_reent_context_ptr;
} wums_loader_init_reent_args_t_;