From e240a4582d5687785b778005714766f86a1db815 Mon Sep 17 00:00:00 2001 From: hgn Date: Sat, 22 Jul 2023 09:08:55 +0100 Subject: [PATCH] a couple assertions about async loaders --- vg_async.h | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/vg_async.h b/vg_async.h index c142ad8..825cad8 100644 --- a/vg_async.h +++ b/vg_async.h @@ -9,6 +9,7 @@ #define VG_GAME #include "vg/vg.h" +VG_STATIC void vg_assert_thread( enum vg_thread_purpose required ); typedef struct vg_async_item vg_async_item; @@ -102,6 +103,7 @@ VG_STATIC vg_async_item *vg_async_alloc( u32 size ) */ VG_STATIC void vg_async_stall(void) { + vg_assert_thread(k_thread_purpose_loader); vg_info( "async_stall: %d\n", SDL_SemValue( vg_async.sem_wait_for_flush ) ); SDL_SemWait( vg_async.sem_wait_for_flush ); } @@ -112,6 +114,7 @@ VG_STATIC void vg_async_stall(void) VG_STATIC void vg_async_dispatch( vg_async_item *item, void (*runner)( void *payload, u32 size ) ) { + vg_assert_thread(k_thread_purpose_loader); if( SDL_SemValue(vg_async.sem_wait_for_flush) ) SDL_SemWait(vg_async.sem_wait_for_flush); @@ -126,6 +129,7 @@ VG_STATIC void vg_async_dispatch( vg_async_item *item, VG_STATIC void vg_async_call( void (*runner)( void *payload, u32 size ), void *payload, u32 size ) { + vg_assert_thread(k_thread_purpose_loader); vg_async_item *call = vg_async_alloc(0); call->payload = payload; call->size = size; -- 2.25.1