Skip to content

Commit edd1278

Browse files
committed
---
yaml --- r: 191435 b: refs/heads/try c: a51cd61 h: refs/heads/master i: 191433: e28c5ef 191431: e05588b v: v3
1 parent 618bd58 commit edd1278

File tree

2 files changed

+27
-1
lines changed

2 files changed

+27
-1
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
refs/heads/master: 809a554fca2d0ebc2ba50077016fe282a4064752
33
refs/heads/snap-stage1: e33de59e47c5076a89eadeb38f4934f58a3618a6
44
refs/heads/snap-stage3: c64d671671aea2e44ee7fc6eb00ee75fc30ed7b9
5-
refs/heads/try: 2e8e8ab564891c3d2ffeeb0f8e1a4e850866f74f
5+
refs/heads/try: a51cd6116446d74a336abcb00f5ced3582ec307f
66
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
77
refs/heads/dist-snap: ba4081a5a8573875fed17545846f6f6902c8ba8d
88
refs/tags/release-0.2: c870d2dffb391e14efb05aa27898f1f6333a9596

branches/try/src/libstd/io/stdio.rs

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -402,3 +402,29 @@ pub fn _print(args: fmt::Arguments) {
402402
panic!("failed printing to stdout: {}", e);
403403
}
404404
}
405+
406+
#[cfg(test)]
407+
mod test {
408+
use thread;
409+
use super::*;
410+
411+
#[test]
412+
fn panic_doesnt_poison() {
413+
thread::spawn(|| {
414+
let _a = stdin();
415+
let _a = _a.lock();
416+
let _a = stdout();
417+
let _a = _a.lock();
418+
let _a = stderr();
419+
let _a = _a.lock();
420+
panic!();
421+
}).join().unwrap_err();
422+
423+
let _a = stdin();
424+
let _a = _a.lock();
425+
let _a = stdout();
426+
let _a = _a.lock();
427+
let _a = stderr();
428+
let _a = _a.lock();
429+
}
430+
}

0 commit comments

Comments
 (0)