File tree Expand file tree Collapse file tree 2 files changed +5
-1
lines changed
branches/snap-stage3/src/libstd/rt Expand file tree Collapse file tree 2 files changed +5
-1
lines changed Original file line number Diff line number Diff line change 1
1
---
2
2
refs/heads/master: 2d28d645422c1617be58c8ca7ad9a457264ca850
3
3
refs/heads/snap-stage1: e33de59e47c5076a89eadeb38f4934f58a3618a6
4
- refs/heads/snap-stage3: 92f60f4365beb7b0677b196b1650069bd88cb616
4
+ refs/heads/snap-stage3: 43fecf3556b47305320221586f48f89fe2f6c505
5
5
refs/heads/try: 7b78b52e602bb3ea8174f9b2006bff3315f03ef9
6
6
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
7
7
refs/heads/ndm: f3868061cd7988080c30d6d5bf352a5a5fe2460b
Original file line number Diff line number Diff line change @@ -540,6 +540,10 @@ impl Scheduler {
540
540
// The current task is grabbed from TLS, not taken as an input.
541
541
let current_task: ~Task = Local :: take :: < Task > ( ) ;
542
542
543
+ // Check that the task is not in an atomically() section (e.g.,
544
+ // holding a pthread mutex, which could deadlock the scheduler).
545
+ current_task. death . assert_may_sleep ( ) ;
546
+
543
547
// These transmutes do something fishy with a closure.
544
548
let f_fake_region = unsafe {
545
549
transmute :: < & fn ( & mut Scheduler , ~Task ) ,
You can’t perform that action at this time.
0 commit comments