diff --git a/src/history.rs b/src/history.rs
index dac738babadef085aa6476eb5ab0cfb26ae682b5..b85f0b1c916b1d262ef164f0771ceb5fcc76f76b 100644
--- a/src/history.rs
+++ b/src/history.rs
@@ -147,7 +147,7 @@ impl History {
         let file = try!(File::open(&path));
         let rdr = BufReader::new(file);
         for line in rdr.lines() {
-            self.add(try!(line).as_ref()); // TODO truncate to MAX_LINE
+            self.add(&*try!(line)); // TODO truncate to MAX_LINE
         }
         Ok(())
     }
diff --git a/src/lib.rs b/src/lib.rs
index cb1d284dc7864b038ef02a6ea9091b992e79bd8b..6e7e625f64cd26526ddd5b875a0f6de13dd7e881 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -647,7 +647,7 @@ fn readline_raw<H: Helper>(
     let user_input = readline_edit(prompt, initial, editor, &original_mode);
     if editor.config.auto_add_history() {
         if let Ok(ref line) = user_input {
-            editor.add_history_entry(line.as_ref());
+            editor.add_history_entry(&*line);
         }
     }
     drop(guard); // try!(disable_raw_mode(original_mode));