tlibthread: fix fault in teardown of proc - plan9port - [fork] Plan 9 from user space
 (HTM) git clone git://src.adamsgaard.dk/plan9port
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
 (DIR) LICENSE
       ---
 (DIR) commit 481b596d9389076d686832e0a3c26fc7b550c532
 (DIR) parent 573169dd88ac5ca0cf75d09464dddba398e83011
 (HTM) 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:
         M src/libthread/thread.c              |       1 +
         M src/libthread/threadimpl.h          |       2 +-
       
       2 files changed, 2 insertions(+), 1 deletion(-)
       ---
 (DIR) diff --git a/src/libthread/thread.c b/src/libthread/thread.c
       t@@ -429,6 +429,7 @@ Out:
                unlock(&p->lock);
                _threadsetproc(nil);
                free(p);
       +        _threadpexit();
        }
        
        void
 (DIR) diff --git a/src/libthread/threadimpl.h b/src/libthread/threadimpl.h
       t@@ -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);