rollup merge of #21920: vojtechkral/main-thread-name

Fixes #21911
This commit is contained in:
Alex Crichton 2015-02-10 08:41:34 -08:00
commit c41655b076
2 changed files with 5 additions and 4 deletions

View File

@ -56,10 +56,6 @@ pub fn stack_guard() -> uint {
pub fn set(stack_bounds: (uint, uint), stack_guard: uint, thread: Thread) {
THREAD_INFO.with(|c| assert!(c.borrow().is_none()));
match thread.name() {
Some(name) => unsafe { ::sys::thread::set_name(name); },
None => {}
}
THREAD_INFO.with(move |c| *c.borrow_mut() = Some(ThreadInfo{
stack_bounds: stack_bounds,
stack_guard: stack_guard,

View File

@ -156,6 +156,7 @@
use option::Option::{self, Some, None};
use result::Result::{Err, Ok};
use sync::{Mutex, Condvar, Arc};
use str::Str;
use string::String;
use rt::{self, unwind};
use old_io::{Writer, stdio};
@ -280,6 +281,10 @@ fn spawn_inner<T: Send>(self, f: Thunk<(), T>, finish: Thunk<Result<T>, ()>)
unsafe {
stack::record_os_managed_stack_bounds(my_stack_bottom, my_stack_top);
}
match their_thread.name() {
Some(name) => unsafe { imp::set_name(name.as_slice()); },
None => {}
}
thread_info::set(
(my_stack_bottom, my_stack_top),
unsafe { imp::guard::current() },