about summary refs log tree commit diff
path: root/src/test/run-pass/issue-2904.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/run-pass/issue-2904.rs')
-rw-r--r--src/test/run-pass/issue-2904.rs20
1 files changed, 9 insertions, 11 deletions
diff --git a/src/test/run-pass/issue-2904.rs b/src/test/run-pass/issue-2904.rs
index 0ef9e7108ae..5a3b177aadc 100644
--- a/src/test/run-pass/issue-2904.rs
+++ b/src/test/run-pass/issue-2904.rs
@@ -16,8 +16,7 @@
 
 extern mod extra;
 
-use std::io::ReaderUtil;
-use std::io;
+use std::rt::io;
 use std::to_str;
 
 enum square {
@@ -64,16 +63,15 @@ fn square_from_char(c: char) -> square {
 }
 
 fn read_board_grid<rdr:'static + io::Reader>(input: rdr) -> ~[~[square]] {
-    let input = @input as @io::Reader;
+    let input = @mut input as @mut io::Reader;
     let mut grid = ~[];
-    do input.each_line |line| {
-        let mut row = ~[];
-        for c in line.iter() {
-            row.push(square_from_char(c))
-        }
-        grid.push(row);
-        true
-    };
+    let mut line = [0, ..10];
+    input.read(line);
+    let mut row = ~[];
+    for c in line.iter() {
+        row.push(square_from_char(*c as char))
+    }
+    grid.push(row);
     let width = grid[0].len();
     for row in grid.iter() { assert!(row.len() == width) }
     grid