From a6847b4fb9fe01d551facf70ca9e360234851f46 Mon Sep 17 00:00:00 2001 From: "Luke T. Shumaker" Date: Fri, 22 Nov 2024 00:53:28 -0700 Subject: libcr: Fix cr_cid_info if coroutine_add is running --- libcr/coroutine.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/libcr/coroutine.c b/libcr/coroutine.c index 45dcb39..726b732 100644 --- a/libcr/coroutine.c +++ b/libcr/coroutine.c @@ -721,6 +721,8 @@ void cr_cid_info(cid_t cid, struct cr_cid_info *ret) { uintptr_t sp; if (cid == coroutine_running) sp = cr_plat_get_sp(); + else if (coroutine_table[cid-1].state == CR_RUNNING) + sp = coroutine_add_env.sp; else sp = coroutine_table[cid-1].env.sp; assert(sp); -- cgit v1.2.3-2-g168b