Skip to content

Commit ad0d832

Browse files
committed
---
yaml --- r: 11674 b: refs/heads/master c: 513d956 h: refs/heads/master v: v3
1 parent 8360104 commit ad0d832

File tree

2 files changed

+14
-7
lines changed

2 files changed

+14
-7
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
refs/heads/master: dc0b9f44e2731dec413d69997ad093962deb665e
2+
refs/heads/master: 513d956dce5be849b69d1b3b4b7aa5c0252fcc1f
33
refs/heads/snap-stage1: e33de59e47c5076a89eadeb38f4934f58a3618a6
44
refs/heads/snap-stage3: 4a81779abd786ff22d71434c6d9a5917ea4cdfff
55
refs/heads/try: 2898dcc5d97da9427ac367542382b6239d9c0bbf

trunk/src/rustdoc/markdown_writer.rs

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -101,12 +101,19 @@ fn pandoc_writer(
101101
os::close(pipe_err.out);
102102
os::close(pipe_in.out);
103103

104-
let stdout = result::get(task::try {||
105-
readclose(pipe_out.in)
106-
});
107-
let stderr = result::get(task::try {||
108-
readclose(pipe_err.in)
109-
});
104+
let stdout_po = comm::port();
105+
let stdout_ch = comm::chan(stdout_po);
106+
task::spawn_sched(task::single_threaded) {||
107+
comm::send(stdout_ch, readclose(pipe_out.in));
108+
}
109+
let stdout = comm::recv(stdout_po);
110+
111+
let stderr_po = comm::port();
112+
let stderr_ch = comm::chan(stderr_po);
113+
task::spawn_sched(task::single_threaded) {||
114+
comm::send(stderr_ch, readclose(pipe_err.in));
115+
}
116+
let stderr = comm::recv(stderr_po);
110117

111118
let status = run::waitpid(pid);
112119
#debug("pandoc result: %i", status);

0 commit comments

Comments
 (0)