]> git.lizzy.rs Git - rust.git/commitdiff
Auto merge of #23798 - alexcrichton:issue-23781, r=aturon
authorbors <bors@rust-lang.org>
Sat, 28 Mar 2015 05:43:12 +0000 (05:43 +0000)
committerbors <bors@rust-lang.org>
Sat, 28 Mar 2015 05:43:12 +0000 (05:43 +0000)
Previously a panic was generated for recursive prints due to a double-borrow of
a `RefCell`. This was solved by the second borrow's output being directed
towards the global stdout instead of the per-thread stdout (still experimental
functionality).

After this functionality was altered, however, recursive prints still deadlocked
due to the overridden `write_fmt` method which locked itself first and then
wrote all the data. This was fixed by removing the override of the `write_fmt`
method. This means that unlocked usage of `write!` on a `Stdout`/`Stderr` may be
slower due to acquiring more locks, but it's easy to make more performant with a
call to `.lock()`.

Closes #23781


Trivial merge