Skip Vec::reserve call more often in reserve_total
diff --git a/src/rust_vec.rs b/src/rust_vec.rs
index b2df5f3..ce79200 100644
--- a/src/rust_vec.rs
+++ b/src/rust_vec.rs
@@ -58,9 +58,9 @@
 
     pub fn reserve_total(&mut self, new_cap: usize) {
         let vec = self.as_mut_vec();
-        let len = vec.len();
-        if new_cap > len {
-            vec.reserve(new_cap - len);
+        if new_cap > vec.capacity() {
+            let additional = new_cap - vec.len();
+            vec.reserve(additional);
         }
     }