plan9port

fork of plan9port with libvec, libstr and libsdb
Log | Files | Refs | README | LICENSE

commit 481b596d9389076d686832e0a3c26fc7b550c532
parent 573169dd88ac5ca0cf75d09464dddba398e83011
Author: Russ Cox <rsc@swtch.com>
Date:   Mon, 13 Jan 2020 23:26:26 -0500

libthread: fix fault in teardown of proc

Fixes #332.

Diffstat:
Msrc/libthread/thread.c | 1+
Msrc/libthread/threadimpl.h | 2+-
2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/libthread/thread.c b/src/libthread/thread.c @@ -429,6 +429,7 @@ Out: unlock(&p->lock); _threadsetproc(nil); free(p); + _threadpexit(); } void diff --git a/src/libthread/threadimpl.h b/src/libthread/threadimpl.h @@ -197,7 +197,7 @@ extern Channel *_dowaitchan; extern void _procstart(Proc*, void (*fn)(Proc*)); extern _Thread *_threadcreate(Proc*, void(*fn)(void*), void*, uint); -extern void _threadexit(void); +extern void _procexit(void); extern Proc *_threadproc(void); extern void _threadsetproc(Proc*); extern int _threadlock(Lock*, int, ulong);