File tree 1 file changed +11
-5
lines changed
1 file changed +11
-5
lines changed Original file line number Diff line number Diff line change @@ -68,14 +68,20 @@ impl Thread {
68
68
)
69
69
. map_err ( |code| io:: Error :: from_raw_os_error ( code as i32 ) ) ?;
70
70
71
- extern "C" fn thread_start ( main : * mut usize , guard_page_pre : usize , stack_size : usize ) {
72
- unsafe {
73
- // Finally, let's run some code.
74
- Box :: from_raw ( main as * mut Box < dyn FnOnce ( ) > ) ( ) ;
71
+ extern "C" fn thread_start (
72
+ main : * mut usize ,
73
+ guard_page_pre : usize ,
74
+ stack_size : usize ,
75
+ ) -> ! {
76
+ {
77
+ unsafe {
78
+ // Run the contents of the new thread.
79
+ Box :: from_raw ( main as * mut Box < dyn FnOnce ( ) > ) ( ) ;
80
+ }
75
81
}
76
82
77
83
// Destroy TLS, which will free the TLS page and call the destructor for
78
- // any thread local storage.
84
+ // any thread local storage (if any) .
79
85
unsafe {
80
86
crate :: sys:: thread_local_key:: destroy_tls ( ) ;
81
87
}
You can’t perform that action at this time.
0 commit comments