about summary refs log tree commit diff
path: root/src/libstd/io_util.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/libstd/io_util.rs')
-rw-r--r--src/libstd/io_util.rs8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/libstd/io_util.rs b/src/libstd/io_util.rs
index 50d2eb6a785..7d43663cc80 100644
--- a/src/libstd/io_util.rs
+++ b/src/libstd/io_util.rs
@@ -13,14 +13,14 @@ use core::io;
 
 pub struct BufReader {
     buf: ~[u8],
-    mut pos: uint
+    pos: @mut uint
 }
 
 pub impl BufReader {
     pub fn new(v: ~[u8]) -> BufReader {
         BufReader {
             buf: v,
-            pos: 0
+            pos: @mut 0
         }
     }
 
@@ -29,13 +29,13 @@ pub impl BufReader {
         // I can't get the borrowing to work correctly
         let bytes_reader = BytesReader {
             bytes: ::core::util::id::<&[u8]>(self.buf),
-            pos: self.pos
+            pos: @mut *self.pos
         };
 
         let res = f(&bytes_reader);
 
         // FIXME #4429: This isn't correct if f fails
-        self.pos = bytes_reader.pos;
+        *self.pos = *bytes_reader.pos;
 
         return res;
     }