File tree Expand file tree Collapse file tree 2 files changed +15
-17
lines changed Expand file tree Collapse file tree 2 files changed +15
-17
lines changed Original file line number Diff line number Diff line change @@ -8,11 +8,6 @@ import task;
8
8
import core:: result;
9
9
import result :: { ok, err} ;
10
10
11
- import comm:: port;
12
- import comm:: chan;
13
- import comm:: send;
14
- import comm:: recv;
15
-
16
11
import common:: config;
17
12
import common:: mode_run_pass;
18
13
import common:: mode_run_fail;
Original file line number Diff line number Diff line change @@ -2,6 +2,8 @@ import run::spawn_process;
2
2
import io:: { writer_util, reader_util} ;
3
3
import libc:: { c_int, pid_t} ;
4
4
5
+ import pipes:: chan;
6
+
5
7
export run;
6
8
7
9
#[ cfg( target_os = "win32" ) ]
@@ -58,29 +60,30 @@ fn run(lib_path: ~str,
58
60
59
61
60
62
writeclose ( pipe_in. out , input) ;
61
- let p = comm :: port ( ) ;
62
- let ch = comm :: chan ( p ) ;
63
+ let p = pipes :: port_set ( ) ;
64
+ let ch = p . chan ( ) ;
63
65
do task:: spawn_sched ( task:: single_threaded) {
64
66
let errput = readclose ( pipe_err. in ) ;
65
- comm :: send ( ch , ( 2 , errput) ) ;
67
+ ch . send ( ( 2 , errput) ) ;
66
68
}
69
+ let ch = p. chan ( ) ;
67
70
do task:: spawn_sched ( task:: single_threaded) {
68
71
let output = readclose ( pipe_out. in ) ;
69
- comm :: send ( ch , ( 1 , output) ) ;
72
+ ch . send ( ( 1 , output) ) ;
70
73
}
71
74
let status = run:: waitpid ( pid) ;
72
75
let mut errs = ~"";
73
76
let mut outs = ~"";
74
77
let mut count = 2 ;
75
78
while count > 0 {
76
- let stream = comm :: recv ( p ) ;
77
- alt check stream {
78
- ( 1 , s ) {
79
- outs = s ;
80
- }
81
- ( 2 , s ) {
82
- errs = s ;
83
- }
79
+ alt p . recv ( ) {
80
+ ( 1 , s ) {
81
+ outs = s ;
82
+ }
83
+ ( 2 , s ) {
84
+ errs = s ;
85
+ }
86
+ _ { fail }
84
87
} ;
85
88
count -= 1 ;
86
89
} ;
You can’t perform that action at this time.
0 commit comments