From bb1959f4167f174404dc04808e07138dfd1a735b Mon Sep 17 00:00:00 2001 From: Mark Simulacrum Date: Fri, 23 Dec 2016 20:47:47 -0700 Subject: Fix TypedArena infinitely looping when inplace reallocation fails. --- src/libarena/lib.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/libarena') diff --git a/src/libarena/lib.rs b/src/libarena/lib.rs index 02e548c4f6e..cde8a85d97c 100644 --- a/src/libarena/lib.rs +++ b/src/libarena/lib.rs @@ -196,9 +196,9 @@ impl TypedArena { self.end.set(last_chunk.end()); return; } else { - let prev_capacity = last_chunk.storage.cap(); + new_capacity = last_chunk.storage.cap(); loop { - new_capacity = prev_capacity.checked_mul(2).unwrap(); + new_capacity = new_capacity.checked_mul(2).unwrap(); if new_capacity >= currently_used_cap + n { break; } -- cgit 1.4.1-3-g733a5